5

我一直在尝试使用浏览器中可用的本机登录提示:

本机登录提示

并一直关注Steven Sanderson 的博文

正如博客中提到的,一旦用户输入他们的登录详细信息,浏览器就会将Authorization: Basic username:password所有未来请求中的标头发送到登录 URL。这意味着如果用户注销但没有关闭浏览器窗口,则下次访问登录页面时,他们会在访问登录页面时自动登录。浏览器有效地存储身份验证详细信息,直到浏览器关闭 - 让您的帐户对未经授权的访问开放。

有没有办法让浏览器忘记授权信息,这样用户在重新输入他们的详细信息的情况下就无法再次登录?

4

1 回答 1

11

正如它在维基百科中所写:

现有浏览器保留身份验证信息,直到选项卡或浏览器关闭或用户清除历史记录。[1] HTTP 没有为服务器提供一种方法来指导客户端丢弃这些缓存的凭据。这意味着服务器没有有效的方法可以在不关闭浏览器的情况下“注销”用户。这是一个重大缺陷,需要浏览器制造商支持“注销”用户界面元素(在 RFC 1945 中提到,但大多数浏览器未实现)或 JavaScript 可用的 API、HTTP 的进一步扩展或使用现有的替代技术,例如在 URL 中使用不可猜测的字符串通过 SSL/TLS 检索页面。

好像一般都没有办法。

于 2011-10-16T19:25:05.633 回答