【问题标题】:Why does Google Chrome not recognize my SameSite cookie?为什么 Google Chrome 无法识别我的 SameSite cookie?
【发布时间】:2017-04-12 17:31:08
【问题描述】:

我正在尝试探索 Google Chrome 如何处理 SameSite cookie。因此,通过使用控制台(ctrl+Shift+J),我为某个网站的 cookie 添加了一个额外的键值对,我有一个帐户。我输入了以下代码:

document.cookie="SameSite=strict"

我检查了剩余的 cookie,所有原始键值对以及新添加的“SameSite=strict”对都仍然存在。

现在,问题在于 Chrome 的行为与 SameSite cookie 的规范不同。例如:当我访问 wikipedia.org 并单击将我定向到 cookie 网站的链接时,我已登录。通常我不会登录,因为 Chrome 不应该发送 cookie由于“SameSite=strict”对。

我是否忽略了什么?

【问题讨论】:

  • 不确定我是否理解。为什么您不应该在这种情况下登录 - 因为您正在关注外部链接?为什么?
  • 当 SameSite 值设置为“strict”时,cookie 将被禁止用于任何跨站点使用。这意味着即使跟随指向另一个网站的链接(使用 ),cookie 也不会一起发送。这在this blog 中也有说明。

标签: google-chrome security cookies


【解决方案1】:

SameSite 不是 cookie 值。这是一个 cookie 标志,如 httpOnly 和安全。所以你不能像document.cookie="SameSite=strict"那样设置它,因为它设置了一个值。

试试

document.cookie="mycookie=myvalue;SameSite=strict"

然后,您可以在 Chrome DevTools 中“应用程序”选项卡的 Cookies 下观察到,您的 cookie 实际上设置为 SameSite=strict,而不仅仅是普通 cookie。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-28
    • 1970-01-01
    • 2022-11-16
    • 1970-01-01
    • 2017-02-12
    • 2021-12-04
    相关资源
    最近更新 更多