为什么 Internet Explorer 不断要求我输入 Intranet 区域中的 NTLM 凭据?

为什么 Internet Explorer 不断要求我输入 Intranet 区域中的 NTLM 凭据?

文字很长,抱歉。我尽量写得具体一些。

我使用的是 Windows 7,Internet Explorer 8 的行为非常令人沮丧。我位于公司局域网中,局域网中有一些内联网服务器和一个用于连接外部世界的代理。

在被明确识别为“本地 Intranet”(如 IE 状态栏中所示)的网站上,我不断收到要求我登录的“Windows 安全”对话框。这些页面由启用了“集成 Windows 安全”的 IIS6 提供,NTFS 允许每个人:读取文件本身。

  • 如果我输入我的 Windows 凭据,页面就可以正常加载。然而,无论我是否勾选“记住我的凭据”,下次都会弹出对话框。(凭据存储在“凭据管理器”中,但这与这些登录框出现的频率无关。)
  • 如果我点击“取消”,可能会发生以下两种情况之一:要么页面加载时缺少某些资源(图像、样式表等),要么页面根本无法加载,并且出现 HTTP 401.2(未经授权:由于服务器配置导致登录失败)。这取决于登录框是由页面本身触发的,还是由引用的资源触发的。
  • 行为似乎完全不稳定,有时页面加载顺利,有时某个资源会触发登录消息,有时则不会。即使只是重新加载页面也会导致行为发生变化。

我使用 WPAD 作为代理检测机制。所有 Intranet 主机都会绕过 PAC 文件中的代理。

我检查了所有我能想到的 IE 设置,将主机模式、单个主机名、IP 范围等所有能想到的配置都输入到“本地 Intranet”区域,勾选“包括绕过代理服务器的所有站点”,随便什么都可以。归根结底就是“有时它就是不起作用”,我慢慢地就疯了。;-)

我知道这与 IE 不会自动将我的 NTLM 凭据传递给 Web 服务器而是询问我有关。通常,这种情况只发生在未被识别为位于“Intranet”区域的 NTLM 安全站点上。

正如所解释的,这里的情况并非如此。尤其是因为一半的页面可以完美加载且不会中断,而一些页面的资源(来自同一服务器!)触发登录消息。

我看过http://support.microsoft.com/kb/303650,给人一种描述问题的印象,但似乎没有什么作用。坦率地说,我不确定“手动编辑注册表”是否是解决此类问题的正确方法。毕竟,我不是世界上唯一一个拥有 IE/Intranet/IIS 配置的人。

我很茫然,有人可以给我提示吗?

答案1

我们唯一能看到这种情况的情况是用户的密码已过期。每当我们看到这种情况时,我们都会要求用户更改密码,并且最好注销并使用新凭据重新登录。内部网站不再要求提供凭据。

进行大量快速支持呼叫...

此外,请确保将本地 Intranet 区域设置为使用当前用户名和密码自动登录。您可以通过以下方式执行此操作:

  1. 工具
  2. 互联网选项
  3. 左键单击“安全”选项卡
  4. 左键单击自定义级别
  5. 向下滚动到用户身份验证
  6. 在“登录”下,选择使用当前用户名和密码自动登录

答案2

也许 4 部分握手中的一些NTLM 目录ie 和代理服务器通信时会丢失信息吗?也就是说,如果 ie 正在向代理服务器询问内联网页面...

我知道您说您尝试过将网站放在 Intranet 区域并将它们设置为绕过代理。不过我很好奇,如果您完全禁用浏览器中的代理配置会发生什么?不再有弹出窗口,对吗?

答案3

尝试查看控制面板下的管理工具;打开 .NET 1.1 向导并将 .NET 安全性调整为针对内部网的“完全信任”。

答案4

由于您处于域中并且问题出乎意料,所以我总是想知道两件事......

  1. 其他用户是否也有同样的行为?
  2. 您的机器上的其他域用户是否也会出现相同的行为?

相关内容