在rails中的authenticate_or_request_with_http_basic之后注销

时间:2009-08-18 09:28:44

标签: ruby-on-rails ruby

如何“退出”用户?知道这不是官方支持,但我需要一个快速而肮脏的黑客。看到某个地方我只是拒绝了401访问 - 但是任何人都知道语法

1 个答案:

答案 0 :(得分:1)

http://httpd.apache.org/docs/1.3/howto/auth.html#basicfaq

  

自浏览器首次启动以来   实现基本认证,   网站管理员想要   知道如何让用户注销。   由于浏览器缓存了用户名   和密码与身份验证   领域,如前所述   教程,这不是一个功能   服务器配置,但是是   获取浏览器的问题   忘记凭据信息,所以   下次资源是   请求,用户名和密码   必须再次供应。有   这种情况很多   理想的,例如使用时   浏览器在公共场所,而不是   希望退出浏览器   在,以便下一个人可以得到   进入您的银行帐户。

     

然而,尽管这可能是   最常被问到的问题   基本身份验证,到目前为止都没有   各大浏览器制造商都有   认为这是一个理想的功能   投入他们的产品。

     

因此,答案就是这样   问题是,你不能。遗憾。

从上面的完整解释中可以看出,你不能。 唯一的解决方法是使用户会话无效并使浏览器再次请求用户名和密码。

此外,您可以尝试(我还没有尝试过)清空WWW-Authenticate HTTP标头。