【发布时间】:2011-06-30 11:18:24
【问题描述】:
为什么几乎所有网站都使用 cookie 而不是基本身份验证? 不仅仅是用户/通行证窗口丑陋,而且没有一个更安全。它们都是不安全的(没有 https)。
【问题讨论】:
标签: session-cookies basic-authentication
为什么几乎所有网站都使用 cookie 而不是基本身份验证? 不仅仅是用户/通行证窗口丑陋,而且没有一个更安全。它们都是不安全的(没有 https)。
【问题讨论】:
标签: session-cookies basic-authentication
要注销基本身份验证登录,通常需要完全退出浏览器。这意味着服务器无法注销用户。
我相信基本身份验证也有更多开销(假设您的 cookie 大小不是很大),但我可能错了。
HTTP 基本身份验证还会随每个请求发送用户名和密码,这可能会降低安全性,因为有更多的拦截机会。
【讨论】:
HTTP basic auth also sends the username and password with every request, making it potentially less secure because there is more opportunity for interception
您可以更好地控制 cookie。您可以对它们进行加密,这样即使没有 HTTPS,它们也是安全的。基本身份验证在 HTTP 上始终是不安全的。 cookie 也不包含每个请求的密码。而且,是的,我能说什么,用户喜欢 AJAX 登录表单和登录时漂亮的动画效果,但遗憾的是基本身份验证无法实现。
【讨论】:
使用 cookie,您可以完全控制何时对用户进行身份验证,而不是在有请求时立即进行。
另外,您也不必对图片进行身份验证
另一件事是您不必依赖系统管理员进行身份验证。
您还可以选择使用会话的用户存储库。
还有其他事情。正如您所说,两者或多或少都是安全的,那么为什么不选择灵活呢?为了向客户展示网站,我们经常使用服务器身份验证,因为它是一种简单的全局解决方案。对于应用内的表单,我们使用 cookie。
【讨论】: