【发布时间】:2020-04-23 05:48:45
【问题描述】:
我们正在开发 Chrome 扩展程序
- 从没有设置 SameSite 属性的域中读取 cookie
- 将 cookie 写入没有 SameSite 属性的域
我们在 manifest.json
中添加了对两个域的权限我们在 Chrome 浏览器中启用了以下标志,
- SameSite 默认 cookie
- 启用删除 SameSite=None cookie
- 没有 SameSite 的 Cookie 必须是安全的
问题
-
即使在启用标志之后,我们也能够从其他域读取使用以下值设置的 cookie。这是预期的吗?如果是,为什么?
- 没有SameSite属性
- 与 SameSite=strict
-
假设一个扩展在域 X.com 的站点中设置了没有 SameSite 属性的 cookie。当网站 (X.com) 出现时会发生什么
- 通过 iframe 被另一个扩展程序使用
- 由域为 Y.com 的另一个站点通过 iframe 使用。 在这两种情况下,cookie 会与响应一起呈现吗??
来自扩展的请求是否被视为跨站点请求?
域中的扩展设置的 cookie 的行为如何?这是否类似于来自不同域的网站设置 cookie 时发生的情况??
对 manifest.json 中的域具有权限的扩展是否能够从其他域读取 cookie,而与 SameSite 值无关??
【问题讨论】:
-
好问题,我也在研究这个问题,但还不清楚。我今天遇到了这个可能会有所帮助:stackoverflow.com/a/58706403/6089612
-
感谢您的回复。该线程似乎正在讨论旧版本中所做的更改。我想知道 Chrome 版本 80 将发布的 SameSite 更改如何影响扩展。
-
即将发生的变化是没有 SameSite 的 cookie 将默认为 SameSite=Lax。根据该问题/答案,Chrome 78 及更高版本将发送 SameSite=Lax cookie。我认为这就是您 Q1 的答案。
-
是的,扩展似乎受制于有关 SameSite cookie 的特殊规则。参考groups.google.com/a/chromium.org/forum/m/#!msg/blink-dev/…
标签: google-chrome cookies samesite