我知道带有secure
标志的 cookie 不会通过未加密的连接发送。我想知道这是如何深入工作的。
谁负责确定是否发送 cookie?
我知道带有secure
标志的 cookie 不会通过未加密的连接发送。我想知道这是如何深入工作的。
谁负责确定是否发送 cookie?
客户端仅为加密连接设置此设置,这在RFC 6265中定义:
Secure 属性将 cookie 的范围限制为“安全”通道(其中“安全”由用户代理定义)。当 cookie 具有 Secure 属性时,只有当请求通过安全通道(通常是 HTTP over Transport Layer Security (TLS) [RFC2818])传输时,用户代理才会在 HTTP 请求中包含 cookie。
虽然看起来对于保护 cookie 免受网络攻击者的攻击很有用,但 Secure 属性只保护 cookie 的机密性。活跃的网络攻击者可以覆盖来自不安全通道的安全 cookie,从而破坏它们的完整性(有关详细信息,请参阅第 8.6 节)。
关于这个主题的另一个词:
secure
因为您的网站完全是 https 而省略example.com
是不够的。
如果您的用户明确到达http://example.com
,他们将被重定向到,https://example.com
但这已经太晚了;第一个请求包含 cookie。