Cookies与基本身份验证

lox*_*oxs 25 basic-authentication session-cookies

为什么几乎所有网站都使用cookie而不是基本身份验证?它不仅仅是用户/传递窗口很难看,而且它们都不是更安全.它们都不安全(没有https).

And*_*all 14

要注销基本身份验证登录,浏览器通常需要完全退出.这意味着服务器无法注销用户.

我相信基本身份验证也有更多的开销(假设你的cookie大小不大),但我可能错了.

HTTP基本身份验证还会为每个请求发送用户名和密码,因此可能不太安全,因为有更多的机会进行拦截.

  • Cookie存储会话ID,您可以删除服务器上的关联会话,并有效地注销用户,因为cookie不再与登录相关联.用户希望能够在不必退出浏览器的情况下注销站点.从cookie中劫持会话ID不如获取实际用户名和密码严重,特别是如果重要操作要求用户输入密码,即使他们已登录. (4认同)
  • 但是基本身份验证是_designed_用于身份验证,而cookie则不是.Cookie是对http协议的滥用,它具有很好的钩子和错误代码以及所有内容(如果使用得当)(在这方面基本身份验证是_proper_). (3认同)
  • 1."退出"用户意味着什么?如果用户能够立即登录,我为什么要退出?"记录某人"的唯一有效方法是,如果我让他们无法继续使用该网站.这可以通过更改用户凭据(或使其无效)来完成.2.开销是我(目前为止)唯一合理的解释,因为服务器需要对每个请求进行密码检查.3.每次请求都会发送Cookie.Firesheep可以劫持每一个请求. (2认同)
  • 如果用户使用的计算机不是他们自己的计算机,则他们很可能想要单击注销链接.此外,基本身份验证登录对话框的不可定制性和突兀性是大多数网站选择cookie的原因的一个重要原因.基本身份验证就是:_basic_. (2认同)
  • @Andrew Marshall:+1表示“HTTP基本身份验证还会在每个请求中发送用户名和密码,这可能会降低安全性,因为有更多的机会被拦截” (2认同)

Dar*_*rov 5

您可以更好地控制Cookie.您可以加密它们,即使没有HTTPS也可以保证安全.基本身份验证始终通过HTTP不安全.Cookie也不包含每个请求的密码.并且,是的,我能说什么,用户喜欢AJAX登录表单和漂亮的动画效果登录时遗憾的是无法用基本身份验证实现.

  • 我不会说加密的cookie比未加密的cookie更安全.不管怎样,如果你有cookie,你可以登录.所以对于中间人来说,你的cookie是否加密并不重要.Firesheep证明了这一点. (5认同)
  • 黑客通常不会想知道cookie中存储的数据是什么.只要他们可以登录受害者的帐户. (5认同)
  • 请参阅我对我的回复的评论,了解为什么劫持会话比获取用户名和密码的安全风险更小. (2认同)