繁体   English   中英

在IIS6下运行的Intranet网站的身份验证问题

[英]authentication issue with an intranet website running under IIS6

我有一个在IIS6下运行的Intranet网站(在特定端口下,而不是默认端口),启用了集成的Windows身份验证,并使用配置了服务帐户的应用程序池。 问题是,如果我使用URL中的完全限定域使用服务器名称访问网站,它会抛出登录提示(即使输入我的Windows登录凭据也不起作用),但如果我使用的是IP地址服务器然后它工作正常。 请让我知道我需要做什么才能获得服务器名称工作的URL。 例如http:// servername:8080 / default.aspx抛出登录提示,但http:// ip address:8080 / default.aspx工作正常

我遇到了同样的问题。 我相信它与Kerberos身份验证机制有关。 如果它转向NTLM它将起作用(它在使用IP地址时会这样)。 Kerberos需要在Active Directory上注册的SPN才能工作。 Kerberos也不允许您在不同的帐户下运行应用程序池,但使用相同的服务器名称。 在这些情况下,您应该拥有该站点的备用名称,并使用Kerberos注册该名称。 但是,我还没有真正解决这个问题,所以这些只是建议。

我想到了两个可能的问题:

  1. 网络中的DNS服务器未将servername解析为IP

    • 从命令行运行Ping servername以检查名称是否带来了预期的IP
    • 编辑C:\\Windows\\System32\\drivers\\etc\\hosts文件并添加服务器名称和IP地址
  2. IIS6中的Bindings不期望servername

    • 确保servername包含在列表中,或者Host Header Name字段为空 替代文字

当Web服务器的IP地址由于新的内部IP寻址方案而改变时,我确实有这些症状。 通过身份验证从Web服务器本身进行,但不是从任何其他系统。 从其他系统,使用URL中的主机名导致IE提示始终被拒绝的凭据,使用URL中的IP地址导致IE提示已接受的凭据。 在追逐了很多红色鲱鱼后,我们怀疑服务器正在使用旧IP地址缓存凭据,因此我们重新启动了服务器,一切正常。

尝试这个。 我有完全相同的问题,并为我修复它(我是链接的线程)

我将我的网站的AuthenticationProvider设置为“NTLM,Negotiate”

按照以下说明操作: http//support.microsoft.com/kb/215383

稍微改变他们当然设置提供者的指令

矿:

cscript adsutil.vbs set w3svc/WebSite/root/NTAuthenticationProviders "**NTLM, Negotiate**"

您可以通过单击IIS左侧的“网站”文件夹来获取网站ID。 这应该列出您的所有网站的ID

感谢Nick的回答引导我

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM