IIS集成验证方式下的不同验证模式
2006-06-10 22:27
190 查看
[align=left]IIS有五种验证方式:允许匿名访问、集成验证、基本验证、windows域服务器的摘要身份验证、.net Passport身份验证。在公司里,我们采用了集成验证的方式,即,公司里的员工只要他登陆了域,那么他访问我们发布的任何站点,都不需要再输入用户名和密码,直接用登陆windows的域帐户和密码进行验证。可是,我一直没有注意到即使是采用的集成验证方式,在实际的验证过程中,iis还有不同的验证模式: Kerberos 和 NTLM 身份验证 在集成的 Windows 身份验证用于验证客户端请求时,Internet 信息服务 (IIS) 将传递 Negotiate 标题。Negotiate 安全标题允许客户端在 Kerberos 和 NTLM 之间进行选择。Negotiate 将选择 Kerberos,除非与身份验证有关的系统之一无法使用它或调用应用程序无法提供使用 Kerberos 所需的足够信息。 我们在公司内部访问这些站点时感觉不出这样的验证方式有什么问题。当我们通过ISA2000将这些站点发布到internet上后,然后,在internet上访问这些站点(登录域),我们发现在windows2000下会弹出身份验证的对话框,要求您输入用户名和密码,而在Xp下索性告诉你找不到这个网页。这到底是怎么回事呢?经过我们多方监测,问题就出在这个Negotiate上,我们如果不使用Negotiate标题,而直接选择NTLM验证模式,即使是在internet上,只要你登录域(在找不到域控制器的时候,是可以通过存储在本机的缓冲登陆的),照样不需要用户名和密码。 因此,我们可以将IIS设置成只允许NTLM身份验证。 1.单击“开始”,单击“运行”,键入 cmd,然后按 Enter 键。 2.找到包含 Adsutil.vbs 文件的目录。默认情况下,该目录是 C:/Inetpub/Admins cripts。 3.使用下面的命令检索“NTAuthenticationProviders”的当前值: cs cript adsutil.vbs get w3svc/NTAuthenticationProviders 4.禁用 Negotiate 以强制 IIS 仅发送 NTLM 标题。要禁用 Negotiate(从而阻止 Kerberos 身份验证),请使用下面的命令(注意“NTLM”必须大写,以避免出现任何不利的影响): cs cript adsutil.vbs set w3svc/NTAuthenticationProviders “NTLM” [/align] |
相关文章推荐
- IIS集成验证方式下的不同验证模式
- IIS集成验证方式下的不同验证模式
- IIS集成验证方式下的不同验证模式
- IIS集成模式和经典模式 系统部署的不同
- IIS经典模式和集成模式在管道模型中的不同
- asp.net Web.config 在不同版本的IIS配置的IHttpHandler的访问路径,以及经典模式和集成模式不同的配置
- IIS经典、集成托管模式的不同
- IIS经典模式和集成模式在管道模型中的不同
- IIS托管管道模式的集成和经典
- 实现深信服上网行为的单点登录(域中IIS集成验证)
- WCF IIS 服务器 500 错误 检测到在集成的托管管道模式下不适用的ASP.NET设置的解决方法(转)
- 使用delphi+intraweb进行微信开发2—intraweb以.net方式发布(以asp.net mvc4模式部署)在IIS(.net虚拟主机)上
- 【ASP.NET 问题】IIS发布网站后出现“检测到在集成的托管管道模式下不适用的ASP.NET设置”的解决办法
- IIS 7.0的集成模式和经典模式
- 集成验证时IE采用Kerberos 还是NTLM验证方式?(摘抄)
- IIS的Windows集成身份验证总结
- 不同业务系统集成模式(摘录MSDN)
- iis7.5 应用程序池 经典模式和集成模式的区别
- 通过Ajax实现不显示登录框的IIS-Windows集成身份验证登录
- IIS同时集成多个Resin(不同版本)的注意事项