即使设置SameSite = None,Safari也不会发送cookie;安全


13

我们的应用程序使用cookie来记住用户登录。我们进行的每次auth API调用,浏览器都会将服务器设置的HTTPonly cookie附加到API请求中,并进行身份验证。莫哈韦沙漠(Mojave)发布后,这种行为在野生动物园中似乎已被打破。

我了解了由safari实现的跨站点cookie安全性,并且SameSite=None;Secure在设置cookie时添加了我们的服务器团队。即使在那之后,它仍然不起作用。

Set-Cookie: my_cookie=XXXXX; path=/; secure; HttpOnly; SameSite=None

请提供建议或提供实际找到解决方案的人的链接。

Answers:


15

此错误影响MacOS 10.14上的Safari版本和iOS 12上的所有浏览器,这意味着将SameSite=None其错误地视为SameSite=Strict,例如,限制性最强的设置。

我在以下任一网站上的SameSite Cookie食谱中发布了一些指南:

  • 使用两组Cookie来说明支持SameSite=None; Secure和不支持的浏览器。
  • 嗅探用户代理以查找不兼容的浏览器,而不SameSite=None为这些请求提供服务。

1
您好罗文,感谢您的答复,并为您的延迟答复道歉。我已经要求我的服务器端团队尝试上面web.dev链接中的指导。无论如何,也许这是一个完全不合适的问题。由于数百万用户受到此更改的影响,如果Apple团队未来有计划解决该问题,那么有什么消息吗?
DieOnTime

我不能代表Apple / Safari团队。我认为原始错误是进行这些讨论的最佳场所。
rowan_m

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.