IIS集成验证方式下的不同验证模式
来源:互联网 发布:mac钥匙串密码忘记 编辑:程序博客网 时间:2024/06/05 17:35
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/Adminscripts。
3.使用下面的命令检索“NTAuthenticationProviders”的当前值:
cscript adsutil.vbs get w3svc/NTAuthenticationProviders
4.禁用 Negotiate 以强制 IIS 仅发送 NTLM 标题。要禁用 Negotiate(从而阻止 Kerberos 身份验证),请使用下面的命令(注意“NTLM”必须大写,以避免出现任何不利的影响):
cscript adsutil.vbs set w3svc/NTAuthenticationProviders “NTLM”
- IIS集成验证方式下的不同验证模式
- IIS集成验证方式下的不同验证模式
- IIS集成验证方式下的不同验证模式
- IIS集成验证方式下的不同验证模式
- iis集成验证小结
- IIS经典、集成托管模式的不同
- 验证DG最大性能模式下使用ARCH/LGWR及STANDBY LOG的不同情况
- MVC下的表单登录验证方式
- 用4种不同的编程模式验证绑定参数
- 集成验证时IE采用Kerberos 还是NTLM验证方式?
- 告别session! spring 集成 jwt 验证方式
- 系统验证的方式
- Oracle的验证方式
- android集成短信验证功能(Eclipse下)
- 在TOMCAT下实现基于表单验证的登陆方式
- ASP.NET MVC下的四种验证编程方式
- ASP.NET MVC下的四种验证编程方式
- ASP.NET MVC下的四种验证编程方式
- QTP加载第三方DLL实现清除IE缓存
- 17周项目五(4)。三色球问题
- 如何设置Android模拟器的键盘
- 三星Note3使用技巧:自带浏览器的拓展功能
- 【揭秘恒大老总许家印】迄今为止最深度、全面的
- IIS集成验证方式下的不同验证模式
- syntax error near unexpected token `('
- ORA-01460:转换请求无法实现或不合理解决 - Oracle数据库
- 批量提交百度的就是没用的
- hive 非等值连接sql写法
- ruby学习笔记 -- 持续更新
- 在Action Bar上添加操作按钮
- logmnr挖掘中间有DDL的操作示例-对于执行DDL前的操作无法挖掘
- IIS HTTP 错误 401.2 - Unauthorized 由于身份验证头无效,您无权查看此页