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