集成Windows身份validation只在IE中不起作用

在我的网站,我有一个文件夹,不允许匿名访问。 它设置为使用集成Windows身份validation,因为它在AD域上。 在Firefox,Chrome,甚至Safari,login工作正常,但不是IE8。 有没有人遇到过这个? 我似乎无法find任何其他人有类似的问题,当然除了在所有的浏览器login失败的地方。

有可能是由于SPN破坏了某个地方。

我怀疑非微软的浏览器不做Kerberos(或者至less,不要像IE那样做)。

这意味着IE可能正在尝试Kerberoslogin,其他人可能正在使用NTLM。

如果http / http://www.example.com或host / http://www.example.com存在SPN,并且它不属于运行应用程序池的帐户,那么这将是此类中断的一个很好的理由。

在Windows 2008或更高版本上: SETSPN -X将检查重复; SETSPN -Q http/www.example.com将查找该特定SPN​​的所有者。

修复你的SPN问题,你可能会修复被破坏的IElogin。

其他指导可能会告诉您在IE高级属性中禁用集成Windows身份validation; 这是一个疯狂的举动,打破了Kerberos的一切,并掩盖了问题。

更多在这里 。

其中一条评论中提到了这一点,但是我想特别提出这个意见,以防其他人发现它有用。 我有这个相同的问题,我能够通过更改应用程序池标识来解决它。 这是在给定的应用程序池的“高级设置”下find的。

有人将此值设置为“AppPoolIdentity”,但我必须将其设置回“NetworkService”才能解决问题。

(我试图张贴一个图片,但是我需要更多的声望,如果有人赞成这个答案,我可以添加图片。)

破损的SPN答案似乎是正确的。 这意味着如果您想正确设置Kerberos,您可能需要向IT / IS部门指出问题。

我不build议“禁用启用集成Windows身份validation”解决scheme,因为它要求普通用户进入并点击他们可能甚至没有权限更改的内容,这取决于pipe理员如何configurationIE。

如果Kerberos安装程序不能很快得到解决,更灵活的解决scheme是在IIS中转到应用程序,单击Authentication,突出显示Windows身份validation行(应该标记为启用,禁用其他所有行),以及然后点击右侧的“Providers …”链接。 可能会有两个条目,“谈判”和“NTLM”,谈判在上面。 将NTLM移到顶部。 虽然这会强制您的站点使用NTLM(这是一种安全风险),但是如果Kerberos不可用,这是唯一的select。

您是否以完全合格的域名访问该网站? 例如,一个Intranet站点可以通过“Intranet”访问,但是IE8不会认为这是在你的AD域中,因为它的“域名部分”不匹配。 您必须使用AD域名为“example.com”的“intranet.example.com”。