会话 cookie 设置 `SameSite=None;安全;`不起作用

2023-12-25

我添加了 SameSite=None;安全的;设置cookie。但 cookie 未设置,我无法登录我的网站。

response.writeHead(200, {
  'Content-Type': 'application/json',
  'Set-Cookie': 'token=' + token + '; SameSite=None; Secure; Expires=' + time.toUTCString() + '; Path=/' + '; Domain=' + hostname,
  'csrf-token': csrfToken
});

我在开发者工具中的“应用程序”>“存储”>“Cookies”下查看了 cookie,并查看了更多详细信息。它显示了一条警告消息:

此 set-cookie 被阻止,因为它不是通过安全连接发送的

chrome阻止cookie,因为我在开发环境上工作并且我发送http请求。但本次测试在Firefox浏览器上登录正确。
我把这个词secure在cookie里面并且它工作正常,但是因为这个词secure必须在旁边使用同一站点 = 无 for 跨域,否则cookie将被阻止。
我的问题是为什么当我使用secure,只有Chrome浏览器会屏蔽cookie,但在其他浏览器中也是如此。 如果我不使用secure我无法测试支付网关,因为如果我不使用安全,它会阻止 Chrome 跨源...


我的问题是为什么当我使用安全时,只有 Chrome 浏览器会阻止 cookie,但在其他浏览器中也是如此

我不确定其他浏览器的情况,但 Chrome 实施了允许 cookie 的策略secure安全连接属性按照此IETF草案 https://datatracker.ietf.org/doc/html/draft-west-cookie-incrementalism-00#section-3.2.

虽然此草案是针对 Chrome 实现的,但它不在 Firefox 上,这就是为什么在 Firefox 上您会转到about:config > network.cookie.sameSite.noneRequiresSecure,默认值为false.

如果您只需要为本地开发环境执行此操作,您可以通过以下方式在 chrome 中保留 cookie 的旧行为:禁用

  1. chrome://flags/#same-site-by-default-cookies
  2. chrome://flags/#cookies-without-same-site-must-be-secure

我必须支持旧版 http 客户端,但如果我使用 https:// origin secure ,我无法从 http 设置 cookie,而且我无法访问它 来自http的cookie,我的目标是让SameSite=None,在http上安全并且 在 http:// 来源上不安全,任何想法,而不是建立 谷歌办公室附近发生抗议活动?

鉴于它在不久的将来将成为标准,我怀疑您是否能够为客户端应用程序实现此行为,唯一的途径是安全,HTTPS。

参考:

  1. https://web.dev/samesite-cookies-explained/#changes-to-the-default-behavior-without-samesite https://web.dev/samesite-cookies-explained/#changes-to-the-default-behavior-without-samesite
  2. https://redmondmag.com/articles/2020/01/28/samesite-cookie-changes-break-apps.aspx https://redmondmag.com/articles/2020/01/28/samesite-cookie-changes-break-apps.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

会话 cookie 设置 `SameSite=None;安全;`不起作用 的相关文章

随机推荐

  • PLINQ 查询给出溢出异常

    我正在运行 PLINQ 查询 如下所示 ParallelQuery
  • 在特定任务中使用 NFC 启动 Activity

    我的应用程序包含许多活动 其中一项活动响应 NFC 意图过滤器以及标准意图 但是 该活动在其自己的任务中启动 而不是在与应用程序相同的任务中启动 当 NFC 意图启动时 应用程序不一定正在运行 但如果是 我希望该活动在同一任务中启动 以确保
  • pygame - 向下滚动页面

    简而言之 我的程序是一个联系人应用程序 这显然意味着一个人需要能够在应用程序中存储多个联系人 这反过来又意味着联系人最终将 离开 屏幕 所以我需要能够向下滚动页面 以便人们可以看到他们的所有联系人并与特定联系人进行交互 但是 我有点困惑 我
  • 子查询 where 子句中的未知列

    我的 INNER JOIN 子查询的 where 子句遇到问题 我收到未知的列错误M idMembre 我尝试使用表名而不是别名 但遇到了同样的问题 我还尝试从子查询中删除 WHERE 子句 并在子查询后的 ON 子句中添加此条件 但是 无
  • 当 iPhone 进入待机模式时,iPhone 应用程序会发生什么情况?

    我的应用程序使用 NSTimer 当 iPhone 进入待机模式 通过按下硬件按钮或通过空闲计时器 时 NSTimer 似乎不会触发 当我再次激活 iPhone 时 我的应用程序仍然在前台 当 iPhone 处于待机模式时 第三方应用程序会
  • 由于未捕获的异常“_HKObjectValidationFailureException”而终止应用程序

    我正在将血糖值保存到 iOS 中的 Health Kit 应用程序中 void viewDidLoad float bloodGlucose 20 float bloodGlucoseValue int bloodGlucose NSLog
  • SOAP-UI - 如何在参数内传递 xml

    在 SOAP UI 中 我向 Web 服务发出如下请求
  • 正则表达式量词加号和星号之间的区别

    我尝试从字符串中提取错误号 例如 Wrong parameters Error 1356 Pattern p Pattern compile d Matcher m p matcher myString m find System out
  • Android 上 imageView 的渲染圆角

    我有以下一段代码用于渲染带有圆角的 imageView public class RoundedCornerImageView extends ImageView private int rounded public RoundedCorn
  • Amazon RDS MySQL 实例执行速度非常慢

    我在Amazon EC2 新加坡区域 上发布了我的网站 并使用MySQL RDS实例进行数据存储 除了性能之外 一切都工作得很好 我看来 我的所有查询 尤其是 select 语句 执行速度非常慢 如果我在本地电脑上检查这个问题 它运行得很好
  • 关于python中switch的一些问题

    这是我在 StackOverflow 上的第一个问题 所以如果某些信息不存在或者我错过了一些重要的信息 请耐心等待我 但无论如何我会尽力 最近我开始用Python2 7编写代码 所以我不太擅长 在使用 PyGtk PyGObject Gla
  • Google 云存储 JavaScript 使用情况

    我正在尝试使用以下命令将图像上传到 Google Cloud Storage 上的存储桶中JSON API https cloud google com storage docs json api 使用 Javascript 示例 API
  • 测量 C++ 中函数的执行时间

    我想知道我的 C 程序中某个函数执行需要多长时间Linux 之后我想做一个速度对比 我看到了几个 time 函数 但最终从 boost 中得到了这个 时间 process user cpu clock captures user CPU t
  • Javascript - 内联脚本与外部脚本 - 有什么区别?

    我的页面上散布着一些 javascript 片段 许多都包含在我自己的 js 文件中 但是我在网上找到的一些内容直接位于页面上 我不太熟悉 javascript 如何与页面交互 添加内联脚本或添加对外部文件的引用之间有区别吗 使用其中一种或
  • 有没有办法通过使用插件在 Firefox 中运行 ActiveX 组件?

    我有一个 ActiveX 插件 我们需要 如果可能的话 在 Firefox 中运行 Firefox 是否有插件 或其他方式 可以实现此目的 我似乎找到了解决办法 http code google com p ff activex host
  • Google 地图 API - 最近的标记功能更改为最近的 n 个标记

    我正在使用中找到的公式这个问题 https stackoverflow com a 4060721 3250782找到地图上距离当前位置最近的标记 我想修改这个公式 以便它找到壁橱n位置数量 最近的 5 个位置 最近的 10 个位置等 我不
  • 如何在 Markdown 文件中保持最新日期

    我想在 LICENSE md 文件中添加版权 但我不想每年 1 月 1 日回去更新日期 有没有办法做到 Copyright current year Name在 Markdown 中 原生版本不支持此功能Markdown http dari
  • 如何以编程方式创建 Chrome 配置文件?

    开发 测试 登台环境是通过我的设置中的不同代理服务器进行控制的 我想编写多个 Chrome 配置文件 有时称为 用户 或 人员 的创建脚本 并为每个配置文件连接到不同的代理服务器 最后 我想与同事分享这个脚本 以便他们能够访问完全相同的设置
  • Bootstrap 3 表单使用 input-group-addon 通过 Jquery Validate 包装错误标签

    将 Bootstrap 3 与表单水平结合使用 使用表单组和输入组标签以及 Jquery Validate 当 Jquery Validate 运行出现错误时 它会在输入组中附加一个标签错误控件 The issue is that inpu
  • 会话 cookie 设置 `SameSite=None;安全;`不起作用

    我添加了 SameSite None 安全的 设置cookie 但 cookie 未设置 我无法登录我的网站 response writeHead 200 Content Type application json Set Cookie t