cookie“安全”标志如何工作?
我知道一个带有secure
标志的cookie不会通过未encryption的连接发送。 我不知道这是如何深入的作品。
谁负责确定cookie是否会被发送?
客户端只为encryption的连接设置它,这是在RFC 6265中定义的:
Secure属性将Cookie的范围限制为“安全”通道(其中“安全”由用户代理定义)。 当Cookie具有安全属性时,只有当请求通过安全通道(通常是基于传输层安全性(TLS)的HTTP [RFC2818])传输时,用户代理才会将cookie包含在HTTP请求中。
尽pipe看起来对于保护活跃networking攻击者的Cookie非常有用,但Secure属性仅保护Cookie的机密性。 一个活跃的networking攻击者可以从一个不安全的通道覆盖安全的cookie,破坏他们的完整性(详见8.6节)。
关于这个问题只是另一个字:
因为您的网站example.com
完全https是不够的。
如果您的用户明确地访问http://example.com
,他将被redirect到https://example.com
但已经太晚了,第一个请求包含cookie。