很多朋友都知道在Web Service中支持Windows验证。但其实能用好的朋友并不是特别多,因为有几个特殊之处需要注意

1. 在服务端如何配置

在Web Service中使用Windows验证的方式 --zt

这里要注意的是,authentication的mode默认就是windows,但光是设置这个模式则毫无用处。必须同时设置有关的authorization规则。并且不要光是allow,最后一定要deny掉所有没有被allow的用户或者组

 

服务必须发布到IIS服务器中才真正可以进行调试。如果没有发布,而仅仅是在VS里面调试,那么就无法进行一些设置,例如windows验证模式具体是什么类型等等。

 

2. 发布服务

在Web Service中使用Windows验证的方式 --zt

一般这里需要禁用“匿名访问”。同时你可能需要选择一种具体的验证模式(基本,还是集成)

如果选择“基本”,那么表示客户端可以动态指定用户名和密码。但要注意的是,此时用户名和密码是明文发送的,有安全性隐患。(可以配合SSL)来解决该问题

如果选择“集成”,那么表示客户端将自动与服务器进行协商,确定用NTLM或者Korbers的验证身份,也就是说需要自动地将客户端的Windows凭据发送给服务端。

 

3. 客户端如何编写代码(如果服务端的验证模式是“基本”)

在Web Service中使用Windows验证的方式 --zt

 

4. 客户端如何编写代码(如果服务器的验证模式为“集成”)

在Web Service中使用Windows验证的方式 --zt

这里只需要(也只能)使用所谓的DefaultNetworkCredentials这个特殊的凭据,其实就是代表了当前客户端的Windows身份。很显然,这种情况下,客户端与服务器端需要在一个可以信任的域环境中。

 

5. 最后值得一提的是:“基本”和“集成”这两种验证方式是可以并存的

转载于:https://www.cnblogs.com/Nina-piaoye/archive/2009/05/19/1460166.html

相关文章:

  • 2021-09-17
  • 2021-08-26
  • 2021-12-07
  • 2022-12-23
  • 2021-05-31
  • 2021-06-14
猜你喜欢
  • 2022-01-24
  • 2022-02-24
  • 2022-12-23
  • 2021-06-04
  • 2022-12-23
  • 2021-11-24
相关资源
相似解决方案