.NETWeb服务安全

.NETWeb服务安全,.net,web-services,security,authentication,.net,Web Services,Security,Authentication,有没有关于以下web服务如何工作的好例子? 我希望Windows/web客户端能够访问web服务,但是客户端应该传递用户名、密码和IP地址,web服务应该能够在接受请求之前确定它是否在允许的用户列表中 提前谢谢 使用WCF,您可以通过使用TransportWithMessageCredential安全性(通过SSL)并提供自己的安全性来实现这一点。然而,在这一点上,您(我被告知)没有访问客户端IP的权限;为此,您需要检查方法本身中的IP—您可以使用RemoteEndpointMessagePro

有没有关于以下web服务如何工作的好例子? 我希望Windows/web客户端能够访问web服务,但是客户端应该传递用户名、密码和IP地址,web服务应该能够在接受请求之前确定它是否在允许的用户列表中


提前谢谢

使用WCF,您可以通过使用
TransportWithMessageCredential
安全性(通过SSL)并提供自己的安全性来实现这一点。然而,在这一点上,您(我被告知)没有访问客户端IP的权限;为此,您需要检查方法本身中的IP—您可以使用
RemoteEndpointMessageProperty


如果您不想使用
TransportWithMessageCredential
路径,那么将用户名和密码作为参数传递给该方法也是有效的(但不方便)(只要传输是安全的)。

我们有一个验证提供的凭据的WebService登录方法。如果用户已验证,则返回票证值

当使用其他WebMethod时,此票证将用作SoapHeader。

您可以将web服务设置为使用NT身份验证,该身份验证将获得表示用户名和密码的令牌。允许的用户将由NT安全性定义。默认情况下,IP地址将在HTTP头中传递

它真的会“传递”IP地址吗?或者这应该由连接暗示吗?据我所知,一旦客户机发起呼叫,ip地址就可以由Web服务确定。我想要的是在webservice中设置一个允许的ip地址列表,并让它在继续请求之前检查它是否是有效的用户以及有效的ip地址。。。“我现在无法使用ssl”…“将要传递的信息是非常机密的”-然后除非您使用基于消息的加密,否则您会遇到一个重大问题…我现在无法使用ssl,因此,我试图找到一种安全的方法来创建一个Web服务,并且只允许某些客户端访问它。将要传递的信息是极其机密的,如果有人设法得到它,我就失业了。