Chrome 控制台 SameSite Cookie 属性警告

Posted

技术标签:

【中文标题】Chrome 控制台 SameSite Cookie 属性警告【英文标题】:Chrome Console SameSite Cookie Attribute Warning 【发布时间】:2020-02-01 07:30:06 【问题描述】:

还有其他人收到此 Chrome 控制台警告吗?

设置了与跨站点资源关联的 cookie 没有SameSite 属性。 Chrome 的未来版本只会 如果设置了跨站点请求,则传递 cookie SameSite=NoneSecure。您可以在开发人员中查看 cookie 应用程序>存储>Cookies下的工具,并在以下位置查看更多详细信息 和。

在 Chrome 标志 chrome://flags/ 中,我尝试禁用两者:

SameSite 默认 cookie

没有 SameSite 的 Cookie 必须是安全的

警告不会消失。

【问题讨论】:

我有这个是因为我在本地主机上运行/调试多个站点,而我正在调试的旧站点中的 cookie 仍然存在。在我清除应用程序缓存并重新加载页面后,错误没有返回。简而言之,请尝试清除缓存。 正如@Helzgate 提到的,这也是我的情况。我通过在开发控制台打开的情况下打开一个隐身窗口进行确认,警告消失了???? 在我的情况下禁用 SameSite=None 隐藏了警告。 如果 Chrome 在控制台消息中提到违规 Cookie 的名称,我会非常高兴。 textslashplain.com/2019/09/30/same-site-cookies-by-default 【参考方案1】:

这是第三方 cookie 设置器(如 Stripe)需要自己处理的事情。

我联系了 Stripe,因为我收到了这条关于 Stripe 付款的消息。

条纹支持响应:

看起来我们已经在内部跟踪这个问题,因为这个警告来自 Stripe.js,而不是来自 react-stripe-elements。目前,这是一个警告,不会影响付款,我们正在努力修复,以消除此消息并与 Chrome 即将进行的 cookie 处理更改兼容。

(我)所以,一切都靠你了?我什么都不需要?

不,这是我们必须解决的问题。


哦,如果你是 Stripe/Facebook/Pinterest/so-forth 的开发者,这个答案对你不起作用;)

【讨论】:

谢谢,我在 Stripe 遇到了完全相同的问题,打算联系他们。现在我知道了,问题出在哪里。 这里也一样。非常感谢您花时间发布此内容。【参考方案2】:

您可以通过 chrome://flags Cookie Deprecation messages disabled 来禁用它们。

【讨论】:

您的网站访问者仍然可以看到它。我认为你不应该禁用它。而是解决问题。如果您是该网站的开发者/所有者。 显然你应该修复它,但问题是关于禁用警告。 这不应该是选择的答案。它不是在修复,而是在地毯下扫除信息。 你没有错,但最初的问题是关于禁用警告。最初接受的答案已被删除,它确实解决了如何解决这个问题。随意提交一个解决如何修复它的答案,我仍然会为那些试图在本地主机上禁用消息以进行开发的人留下这个问题,就像我一样。 这些警告中的大多数来自第三方(在我的情况下,全部),因此不一定要由 我们 来修复它。我们不能告诉 Google 修复他们的 cookie 并期望得到回应。此修复让开发人员处理他们可以控制的代码时保持控制台清洁,谢谢。【参考方案3】:

Chrome 80 版将于 2 月 4 日推出。看起来控制台“SameSite Cookie Attribute”警告终于被谷歌解决了。 80正式版上线前大家可以下载Chrome Beta自己测试。

【讨论】:

我正在使用 83 .. 仍然面临同样的问题 cookie 相同站点禁用选项【参考方案4】:

我对 paypal 脚本也有同样的问题,因为只有他们能够设置 cookie,所以他们需要修复它,以便默认使用此功能的浏览器能够正确地向用户显示内容。

【讨论】:

对于给您带来的不便,我们深表歉意。我们已通知产品开发团队有关 chrome 控制台上显示的警告消息,警告消息不会影响任何 PayPal 交易,我们的内部团队也知道未来的更新。谢谢你帮助我们。此致 Srinivasan 商家技术支持 PayPal, Inc. ref:_00D30LaY._5002E1RKeGP:ref【参考方案5】:

这是我最终解决问题所需要的。仔细阅读警告并在我的谷歌浏览器设置中启用/禁用所需元素

    在 URL 中输入 chrome://flags 在搜索框(搜索标志)中输入 cookie 按照截图

不要忽略警告并隐藏警告消息!

将此视为一种解决方法,理想情况下,您尝试加载的任何第 3 方应用都需要在其标头中设置 SameSite=None and Secure 参数。

【讨论】:

【参考方案6】:

清除我的网站数据对我有用,我希望它可以帮助其他人:

我使用的 vuejs - Axios 设置与之前使用新 PWA 技术的开发环境相同。所以清除应用程序缓存是解决办法。

【讨论】:

以上是关于Chrome 控制台 SameSite Cookie 属性警告的主要内容,如果未能解决你的问题,请参考以下文章

Springboot应用中设置Cookie的SameSite属性

对于未来chrome80 samesite问题的兼容解决方案

最新的 Chrome 85 使用 SameSite=None 和安全删除 3rd 方 cookie

如何解决来自 Google Chrome 的此警告? Cookie... `SameSite=None` 但没有 `Secure`

Chrome80以上版本,跨域Cookie的SameSite问题

即使设置了 sameSite:'none' 和 secure: true 对于 MERN 堆栈 Web 应用程序,Cookie 也不会保存在 chrome 中