【发布时间】:2020-11-17 14:58:29
【问题描述】:
我对会话 cookie 的生命周期/行为有疑问
用户打开 siteA.com。设置了身份验证 cookie sessionAuth=xyz。 cookie 是 HttpOnly、Secure 和 Expires=Session。
siteA.com 通过提交 HTTP-Form 重定向到 siteB.org,因此 HttpMethod 为 POST。
siteB.org 做了一些事情并重定向回 siteA.com,同样使用 HTTP-Form 和 HttpMethod=POST。 浏览器现在应该使用这个 HTTP 请求发送 cookie sessionAuth=xyz 吗?
我在 Chrome 86.0.4240.111(64 位)上做了一些尝试,不幸的是有时添加了 cookie,有时没有添加。但我无法弄清楚它何时/为什么起作用,何时不起作用。
我的想法:
- 是的,应该添加cookie,因为浏览器还没有关闭,所以会话仍然有效。
- 不,因为 cookie 来自 siteA.com,但 HttpPost 是由 siteB.com 完成的
- 不,因为会话在第一次重定向/表单提交发生后立即关闭。
正确的行为是什么?
我觉得这在过去有效(Cookie 可用并已添加)。也许最新的 cookie 隐私更改会产生一些影响? https://blog.heroku.com/chrome-changes-samesite-cookie
【问题讨论】:
标签: google-chrome cookies httpcookie