【问题标题】:Cookies without samesite attribute are not stored in chrome storage?没有 samesite 属性的 cookie 不存储在 chrome 存储中?
【发布时间】:2020-08-01 06:43:19
【问题描述】:

我正在尝试了解这个新的相同站点规则 https://www.chromestatus.com/feature/5088147346030592 是如何影响我的网站的。

所以我在域a.com 下有一个网站。当客户访问该网站时,我在后台调用合作伙伴网站b.com,该网站回复 http 200 ok 并在此响应上设置跟踪 cookie。此 cookie 用于域 b.com 并且没有 samesite 属性。我们正在使用这种机制,因此我们可以跟踪访问站点 a.com 并随后前往 b.com 执行某些业务操作的客户。这样a.com 可以从b.com 那里为之前访问过a.com 的客户获得部分佣金。

我的问题是这种新的相同站点更改是否会影响这种方法?据我了解,这些 cookie 是针对 b.com 域的(即使它们是从 a.com 调用的),它们是在 b.com 上读取的。因此,它们没有相同站点属性(默认为 samesite=Lax)这一事实不应影响这种方法。但是在谷歌浏览器的网络标签中,我可以看到 chrome 正在向这个 cookie 发出警告(只是示例 cookie 图片):

另外,如果我在浏览器存储中搜索此 cookie,它不存在吗?这是否意味着chrome现在拒绝这个cookie?

感谢任何帮助。 :)

【问题讨论】:

    标签: google-chrome cookies samesite


    【解决方案1】:

    如果您希望为跨站点使用设置 cookie,它们必须同时指定 SameSite=NoneSecure。见https://web.dev/samesite-cookies-explained

    【讨论】:

    • Tnx @rowan_m。在我的情况下,我通过我的网站a.com 上的网站b.com 的iframe 图像注入。来自b.com 的图像正在其响应中设置 cookie。但是当用户在a.com 域上时,a.comb.com 不会读取该 cookie。基本上我从b.com 加载只是1x1 像素图像,它在响应中设置cookie,我希望当用户访问我的站点到b.com 站点时,在b.com 域(第一方)上读取此cookie。在这种情况下,浏览器会拒绝图像 cookie(例如,不存储它),因为它是第三方 cookie,或者如果 cookie 有错误的“相同站点”设置,则存储但不发送?
    • 额外的不是“b.com”应该在第一次登陆呼叫时从“a.com”读取该cookie,而是在随后的一些呼叫中读取该cookie,因此来源将是“b.com”。跨度>
    猜你喜欢
    • 2020-04-17
    • 2020-07-13
    • 2015-09-10
    • 2020-02-01
    • 1970-01-01
    • 2014-10-24
    • 2021-09-18
    • 2017-07-25
    • 2023-03-24
    相关资源
    最近更新 更多