rak*_*los 13 active-directory windows-authentication iis-7.5 internet-explorer-7
真的需要帮助,并尝试了很多东西,没有想法.
我有一个托管在内部开发服务器上的站点,可供内部员工访问.
服务器设置是windows 2008 R2,iis 7.5 sql 2008 express.我使用活动目录进行身份验证.
在Chrome网站上加载,并自动登录我识别我的名字.
在IE7中查看站点时,响应为: "401 - 未授权:由于凭据无效,访问被拒绝.您无权使用您提供的凭据查看此目录或页面."
我尝试过以下方法:
<anonymousIdentification enabled="false" /><authentication mode="Windows" /><identity impersonate="false" />cscript adsutil.vbs set w3svc/NTAuthenticationProviders "NTLM"当我在IE7中访问内部网时,我确信它不是一个浏览器设置,因为它是针对AD进行身份验证的.
怎么了?我该怎么办呢?
非常感谢
Set*_*eth 20
来自technet文章http://technet.microsoft.com/en-us/library/cc754628(v=ws.10).aspx:
Windows身份验证的默认设置是Negotiate.此设置意味着客户端可以选择适当的安全支持提供程序.要强制进行NTLM身份验证,必须更改ApplicationHost.config文件中元素下的元素值.
IE正在使用Kerberos而不是像Chrome和Firefox那样回归NTLM.您必须按照以下步骤在IIS7.5中强制执行NTLM身份验证:

在类似的环境中有一个web-apps存在这样的问题.事实证明IE正在尝试使用Kerberos进行身份验证,而在IIS身份验证设置中关闭了Kerberos.Chrome无法使用Kerberos后会降至NTLM,因此在Chrome网络应用中运行良好.
解决方案相当简单.
1. Open IIS manager
2. Open "Authentification" node
3. Right click on 'Windows Authentification' item.
4. Select "Advanced settings" in context menu.
5. Switch off kernel mode (it's not compartible with Kerberos provider.)
6. Repeat p.1-3.
7. Select "Providers..." in context menu
8. Add Kerberos to enabled providers list
9. Restart IIS
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11541 次 |
| 最近记录: |