我建立了一个具有基本 HTTP 身份验证的网站。如果我使用 IE 11 或 Firefox 38 访问该网站,我会收到要求输入凭据的预期对话框。如果我尝试使用 Chrome 45 访问该网站,它会立即显示“需要授权”错误页面,并且从不要求我输入凭据。即使我重新启动浏览器或整个计算机后,这种情况仍然会发生。
我做了以下事情:
- 将我的 IE/Windows Internet 选项中的所有安全区域设置为提示输入用户名和密码,因为据我了解,Windows 版 Chrome 使用这些设置。
- 尝试确保我要访问的主机已启用弹出窗口。
- 检查是否可能保存了错误的凭据(我要去的主机没有保存的密码)。
- 查阅了 Chrome 本身的“设置”页面,没有发现其他有用的东西。
- 转到所需地址并将凭据放入 URL ( )。
http://user:[email protected]/page.html
还没有骰子,我就要拔掉我的头发了。
我想在此指出的是,首先,我无法提供我尝试访问的 URL,因为它们不是公开的。其次,存在一些基于域的策略,我无法更改 Chrome 中的某些设置(这是一台公司机器)。我想知道我是否遗漏了什么,至少可以解释为什么它会这样做?
答案1
...就在我写完这篇文章的时候,我偶然发现了一些我确实错过的东西。看来我的域管理员设置的政策与 Chrome 的AuthSchemes
策略设置为negotiate
,因此它不会处理基本身份验证。看来我需要和 IT 部门谈谈……
答案2
我遇到了类似的问题,但无法找到 Chrome 存储此设置的位置。在 OS X 上,它位于~/Library/Preferences/com.google.Chrome.plist
。
您可以通过阅读以下内容来检查自己是否受到了影响AuthSchemes
:
defaults read ~/Library/Preferences/com.google.Chrome.plist
如果这是 IT 政策,它将被重新应用,但您可以通过确保AuthSchemes
设置正确并重新启动 Chrome 来测试是否存在此问题:
defaults write ~/Library/Preferences/com.google.Chrome.plist AuthSchemes basic,digest,ntlm,negotiate
答案3
我遇到过类似的问题,在特定网站上输入基本身份验证后,Chrome 没有显示保存对话框。但是,它确实保存了我访问的实际网站的登录名/密码。我通过从“设置 > 管理密码”中删除此网站的现有登录名/密码并重新启动 Chrome 解决了此问题。此后,基本身份验证的保存对话框出现了。
我认为当您在网站上保存了密码并稍后添加基本身份验证时会发生这种情况。