【问题标题】:Lifetime of Session Cookie会话 Cookie 的生命周期
【发布时间】: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


    【解决方案1】:

    我有一些问题。

    SiteA.com 和 SiteB.com 是否在同一个域中?

    您如何创建 cookie?

    对我来说:

    setcookie('admin_id', $result['admin_id'], time() + 28*24*3600, "/", null, false, true);
    
    

    当我们声明 cookie 在网站的任何部分都有效时。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-10
      • 1970-01-01
      • 1970-01-01
      • 2016-03-23
      • 1970-01-01
      • 2013-06-07
      • 2017-09-04
      • 1970-01-01
      相关资源
      最近更新 更多