Chrome 51+中SameSite cookie属性的允许值是多少

时间:2016-06-06 11:30:25

标签: cookies csrf-protection

2016年5月25日发布的Chrome 51增加了对SameSite cookie属性的支持,该属性可用于缓解CSRF暴露。

示例Set-Cookie响应标头字符串,例如:

access_token=SOME_JWT_TOKEN; path=/app; expires=EXPIRY; HttpOnly; SameSite=Strict

我已经阅读了IETF spec的V7用于此cookie增强,我发现它在允许的SameStrict值方面不明确,并且无法在整个互联网上找到关于支持哪些精确字符串值的任何权威指南。

以下是我认为/认为有效的三个选项:

  1. SameSite
  2. SameSite =严格
  3. SameSite =拉克斯
  4. 3.1节中的语法表明所有都是有效的,但4.1节(规则1)中的规则表明只有选项2和3有效。

    所以问题具体是:

    • Chrome 51及更新版本支持哪些内容? (答案:仅限选项2和3)
    • 其他浏览器支持哪些内容?

1 个答案:

答案 0 :(得分:1)

我发现Chrome会尊重SameSite = Strict和SameSite = Lax,但如果你只是将SameSite添加到你的cookie字符串中,那么cookie将根本不被使用!

这是铬的预期行为,this chromium issue中有一些讨论。

我能找到的最佳非官方非规范写作是here