当前位置: 首页 > news >正文

架设网站服务器景泰做网站

架设网站服务器,景泰做网站,wordpress 做app分销,网页架构人才培训中心深入解析 Web 应用中的 CHIPS(Partitioned Cookie Attribute) 最新发现flask3.1.0 的版本引入了新的特性:对CHIPS的支持。不少同学对这个可能有点陌生,本文带大家了解一下。 为了在隐私保护和功能需求之间取得平衡,Goo…

深入解析 Web 应用中的 CHIPS(Partitioned Cookie Attribute)

最新发现flask3.1.0 的版本引入了新的特性:对CHIPS的支持。不少同学对这个可能有点陌生,本文带大家了解一下。

为了在隐私保护和功能需求之间取得平衡,Google 推出了 CHIPS(Cookies Having Independent Partitioned State) 标准。它通过引入 Partitioned Cookie Attribute,允许跨站点环境下的独立 Cookie 存储,为特定场景提供隐私友好的解决方案。


一、CHIPS 的起源

传统的 Cookie 存储机制包括 第一方 Cookie第三方 Cookie

  • 第一方 Cookie:由用户访问的站点设置,用于会话管理、用户偏好等。
  • 第三方 Cookie:由嵌入到站点中的第三方资源(如广告或分析脚本)设置,用于跨站跟踪。

由于隐私问题,浏览器开始逐步限制第三方 Cookie。例如:

  • Safari 的 Intelligent Tracking Prevention (ITP)
  • Firefox 的 Enhanced Tracking Protection (ETP)
  • Chrome 的计划(Privacy Sandbox)将逐步淘汰第三方 Cookie。

然而,限制第三方 Cookie 会导致某些合法的跨站点功能失效,例如嵌入式服务的会话保持。为了满足这些场景的需求,CHIPS 应运而生。


二、CHIPS 的目的

CHIPS 的主要目标是为跨站点环境下的 Cookie 存储提供一种隐私友好的解决方案:

  1. 隐私保护:通过分区存储,避免第三方 Cookie 被用于跨站追踪。
  2. 功能性支持:允许跨站点场景(如嵌入式内容)拥有独立的 Cookie 存储,不受其他站点的干扰。
  3. 兼容性:减少浏览器对传统跨站点功能的影响,确保用户体验。

三、CHIPS 的设计

CHIPS 的核心设计是引入了 Partitioned 属性,用于定义 Cookie 的存储隔离规则:

1. 分区机制

  • 在跨站点请求中,浏览器为每个 Top-Level Origin(顶级站点)Embedded Origin(嵌入站点) 创建独立的 Cookie 分区。
  • 分区的关键由 (Top-Level Origin, Embedded Origin) 组成。例如:
    • 用户在 example.com 页面嵌入了 iframe.analytics.com
    • 分区后,analytics.comexample.com 中的 Cookie 不会与 analytics.com 在其他站点的 Cookie 冲突。

2. Partitioned 属性

CHIPS 的关键属性是 Partitioned,它必须与 SameSite=None; Secure 一起使用。示例:

Set-Cookie: user_session=abc123; Path=/; Secure; SameSite=None; Partitioned
  • Secure:必须通过 HTTPS 设置。
  • SameSite=None:允许跨站点访问。
  • Partitioned:指定 Cookie 为分区 Cookie。

四、CHIPS 的工作原理

  1. 设置 Partitioned Cookie

    • 在 HTTP 响应头中返回带有 Partitioned 属性的 Cookie。
    • 浏览器将为特定的 (Top-Level Origin, Embedded Origin) 创建独立的 Cookie 存储。
  2. 存储和检索

    • 当用户访问 example.com 页面,嵌入的 iframe.analytics.com 会使用其自己的 Cookie 分区。
    • 即使用户访问其他顶级站点(如 another.com)也嵌入了 iframe.analytics.com,它的 Cookie 状态是独立的。
  3. 隐私保证

    • Cookie 的分区存储仅限于当前顶级站点上下文,无法用于跨站追踪。

五、CHIPS 的实际应用

1. 嵌入式第三方服务

场景:嵌入到站点的第三方支付、聊天工具等需要维持用户的会话状态,但不能访问其他站点的用户信息。

2. 广告网络优化

广告平台可以为每个顶级站点独立存储用户的点击数据,避免与其他站点数据混合。

3. 分析工具

像 Google Analytics 这样的工具可以使用 Partitioned Cookie 来跟踪同一顶级站点内的用户活动,同时避免跨站点的隐私问题。


六、如何在后端使用 CHIPS

以下是使用 Python 的 Web 框架(Flask 和 Django)的示例,展示如何在后端设置 Partitioned Cookie。

1. Flask 示例

from flask import Flask, make_responseapp = Flask(__name__)@app.route('/')
def set_cookie():response = make_response("Partitioned Cookie Set!")# 设置 Partitioned Cookieresponse.set_cookie('user_session', 'abc123', path='/', secure=True, samesite='None', httponly=True)response.headers.add('Set-Cookie', 'user_session=abc123; Path=/; Secure; SameSite=None; Partitioned')return responseif __name__ == '__main__':app.run(ssl_context='adhoc')

2. Django 示例

from django.http import HttpResponsedef set_cookie(request):response = HttpResponse("Partitioned Cookie Set!")response.set_cookie('user_session','abc123',path='/',secure=True,samesite='None',httponly=True)# 手动添加 Partitioned 属性response['Set-Cookie'] = 'user_session=abc123; Path=/; Secure; SameSite=None; Partitioned'return response

七、如何在前端使用 CHIPS

前端开发者需要确保以下几点:

  1. 确保通过 HTTPS 加载页面和嵌入内容Secure 属性要求 Cookie 只能通过 HTTPS 传输。
  2. 正确配置 SameSite 属性:必须设置为 SameSite=None
  3. 加载 iframe 或嵌入资源时传递 Cookie
    • 使用 <iframe> 标签时,需指定 allow 属性:
      <iframe src="https://analytics.com" allow="partitioned-cookies"></iframe>
      
    • 或在 fetch 请求中指定 credentials: 'include'
      fetch('https://analytics.com/data', {credentials: 'include'
      });
      

八、CHIPS 的优势与局限性

优势

  1. 隐私友好:解决了跨站点 Cookie 滥用问题。
  2. 支持合法跨站场景:如嵌入式服务、支付网关等。
  3. 与现代隐私政策兼容:符合 GDPR 等隐私法规的要求。

局限性

  1. 浏览器兼容性:目前仅部分现代浏览器支持 CHIPS。
  2. 复杂性增加:开发者需要额外配置 Cookie 和跨站请求。

九、总结

CHIPS 提供了一种隐私友好的跨站点 Cookie 管理方式,通过分区存储解决了传统第三方 Cookie 的隐私问题。在 Web 应用中,开发者可以通过后端设置带有 Partitioned 属性的 Cookie,并在前端正确传递和管理这些 Cookie,实现安全可靠的跨站功能。

随着 Web 隐私标准的不断演进,CHIPS 将成为构建现代 Web 应用的关键工具之一。如果你的应用需要支持跨站场景,赶快尝试使用 CHIPS 优化隐私和功能吧!

http://www.15wanjia.com/news/193909.html

相关文章:

  • 怎么做网站搜索引擎优化电子商务方案设计案例
  • 网站开发行业分析手机网站设计制作服务
  • 青岛福瀛建设集团网站创建一个网站 站点根文件夹为
  • wordpress seoseo排名优化点击软件有哪些
  • 网站备案负责人幕布照wordpress网页手机自适应
  • 木渎网站建设网站建设反馈书模板
  • 转转网站怎么建设常州做企业网站的公司
  • 用中文模版可以做英文网站吗建设用地规划许可证在哪个网站查询
  • 阜阳交通建设工程质监局网站怎么用腾讯云服务器做网站
  • 药品网站如何建设设计吧 网站
  • 上海高级网站建设个人服务平台
  • 用c 实现网站开发网络优化首先要有网站
  • 软件开发费和网站建设新网站建设公司
  • 深圳企业网站建设维护网站设计欣赏心得体会
  • 网站设计主题有哪些长春电商网站建设公司排名
  • 网站标题上的小图标怎么做的电视直播网站开发
  • dede网站底部西安高端网站
  • 免费自助建站宝洁网站建设
  • 上海市网站设计2345网址导航官网
  • 长沙微网站怎么计算网站开发费用
  • 网站正在升级建设中大连网龙建站优化推广
  • 企业网站建设_秒搜加强和改进网站建设建设方案
  • 为什么不能用来名字做网站名找人做网站需要先了解哪些要点
  • 中国建设官方网站企业大连德泰建设
  • 天猫商城官网登录seo信息查询
  • 网页制作的工具有哪些购物网站优化的建议
  • 旅游网站建设分析 需求郑州网站设计公司排名
  • 网站开发的检索速度在啥范围之内山东省住房城乡建设厅查询网站首页
  • 免费网站登陆模板数控机械加工网
  • 哪家公司可以做网站网站源码在哪看