【问题标题】:HttpOnly Cookie not working when I use the domain attribute with a subdomain value当我将域属性与子域值一起使用时,HttpOnly Cookie 不起作用
【发布时间】:2021-12-20 05:23:15
【问题描述】:

我正在使用 ExpressJS 来提供这个 cookie,如下所示: res.cookie('x-customer', access_token, { maxAge: 1200000, httpOnly: true, domain: 'abc.com.au', secure: true })

在我的本地,我正在使用 NGINX 代理,它工作正常,这个响应设置我的 cookie 就好了:

  1. Chrome Devtools > Network > Cookie 选项卡显示响应正在设置它

  2. Chrome Devtools > Network > Headers 选项卡显示具有 Set-Cookie 的响应

但是,一旦我将其移至 TEST 环境,它就不再设置 cookie:

  1. Chrome Devtools > Network > Cookie 选项卡甚至不显示响应

  2. Chrome Devtools > Network > Headers 选项卡缺少响应集 Cookie

然后,如果我删除域属性并部署到 TEST,cookie 开始出现并且 Response 能够设置它,但不是正确的解决方案,因为我需要指定域属性以便子域,例如 site1.abc。 com.au 和 site2.abc.com.au 将能够读取 cookie。

更新 1:即使我更改域属性以将确切的域作为原点,它仍然不起作用;就像我在 cookie 中存在域属性一样,它在仅测试环境中停止工作

更新 2:我认为测试环境使用 Webseal 或 Isam 或类似的东西,可能是阻止/丢弃 cookie 的那个吗?

你能帮忙告诉我问题出在哪里吗?

【问题讨论】:

    标签: javascript node.js express cookies webseal


    【解决方案1】:

    问题出在 Webseal 上。默认设置会导致问题。 他们不得不使用

    validate-backend-domain-cookies:no
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-18
      • 1970-01-01
      • 2014-02-21
      • 2013-07-12
      • 1970-01-01
      • 2013-01-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多