有多项功能可能会影响到特定网站上的单个 Chrome 客户端是允许还是屏蔽第三方 Cookie:
本文介绍了这些 Chrome 功能如何相互作用,并介绍了相关工具和技术,以帮助您了解第三方 Cookie 可用或被屏蔽的原因。
导致系统允许或阻止第三方 Cookie 的原因是什么?
本部分介绍了如何针对所有网站、单个网站或单个用户允许或阻止第三方 Cookie。
用户设置
通过 chrome://settings
或 Chrome 地址栏中的眼睛图标,用户可以设置或更改浏览器的默认第三方 Cookie 行为,包括屏蔽所有第三方 Cookie。用户还可以添加例外情况,以允许特定网站的第三方 Cookie。
阻止第三方 Cookie
chrome://settings/cookies
您可以前往隐私和安全 > 第三方 Cookie 屏蔽第三方 Cookie。 启用阻止所有第三方 Cookie 会在所有情境下阻止第三方 Cookie,包括第三方 Cookie 可能以其他方式可用的位置,例如在 Related Website Set 中,或当缓解措施(例如基于启发法的例外情况)正在实施时。
但是,如果从 chrome://settings/cookies
启用了阻止第三方 Cookie,则可以通过启用允许相关网站查看您在群组中的活动,允许在 Related Website Set 中使用第三方 Cookie:
chrome://settings/trackingProtection
在属于跟踪保护测试组的 1% 的 Chrome 客户端中,默认情况下会限制第三方 Cookie。这些用户可以阻止来自 chrome://settings/trackingProtection
的所有第三方 Cookie。这与来自 chrome://settings/cookies
的阻止第三方 Cookie 的影响相同。
允许第三方 Cookie
从 chrome://settings
中,用户可以将某个网站添加到已获准访问第三方 Cookie 的网站列表中。
此外,当第三方 Cookie 被屏蔽或受限时,使用第三方 Cookie 的网站会在地址栏(多功能框)中看到眼睛图标。
点击眼睛图标即可暂时允许当前网站的第三方 Cookie:
使用眼睛图标允许某个网站使用第三方 Cookie,其效果与将该网站添加到 chrome://settings
中获准使用第三方 Cookie 的网站的效果相同,但前提是此设置的有效期为 90 天。
期满后,可根据需要通过眼睛图标为网站续期,以便网站可以继续访问第三方 Cookie。
也可以撤消各个网站的第三方 Cookie 访问权限。这会从允许使用第三方 Cookie 的网站列表中移除当前网站:
- 禁止所有第三方 Cookie 的用户设置会覆盖 Chrome 标志、弃用试用、弃用试用宽限期和基于启发法的例外情况。
- 如果设置了企业 Cookie 政策,则无法使用用户设置,以更改其浏览器的默认第三方 Cookie 行为。
chrome://settings/content/siteData
这可让用户允许或阻止来自各个网域、第一方或第三方的数据存储(包括 Cookie)。(相比之下,如果允许第三方 Cookie 访问,只需将相应网站添加到允许使用来自 chrome://settings/cookies
或 chrome://settings/trackingProtection
的第三方 Cookie 的网站,就可以在相应网站上从任何网域设置和读取所有第三方 Cookie。)
您应确保 chrome://settings/content/siteData
不会干扰测试。
哪些临时缓解措施和异常会被阻止?
跟踪保护功能默认会限制第三方 Cookie,但也会采取一些缓解措施(例如基于启发法的例外情况、弃用试用和弃用试用宽限期),从而暂时允许第三方 Cookie。来自 chrome://settings
的阻止所有第三方 Cookie 会覆盖部分缓解措施。
✅ 允许第三方 Cookie
** 屏蔽了第三方 Cookie
设置 | Privacy Sandbox API | 临时缓解措施 | 用户设置 | ||||
---|---|---|---|---|---|---|---|
条状标签 | 包含提示的 Storage Access API | Related Website Set | 基于启发法的异常 | 弃用试用 | 弃用试用宽限期 | 允许特定网站上的第三方 Cookie | |
跟踪保护已启用,chrome://settings/trackingProtection 未启用“阻止所有第三方 Cookie” |
✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
跟踪保护已启用,“阻止所有第三方 Cookie”已启用(自 起) chrome://settings/trackingProtection |
✅ | ✅ | ✖ | ✖ | ✖ | ✖ | ✅ |
跟踪保护未启用,chrome://settings/cookies 的“阻止第三方 Cookie” 未启用 |
✅ | ✅ | 取决于用户设置 | ✖ | ✖ | ✖ | ✅ |
Chrome 旗帜
有多个 Chrome 标志会影响是否允许或阻止单个用户的第三方 Cookie。
- 所有 Chrome 标志都会被用户设置替换,以屏蔽第三方 Cookie。反之,您不能设置阻止第三方 Cookie 的标志,然后从用户设置中“重新启用”这些 Cookie,除非将网站添加到允许使用第三方 Cookie 的网站列表中。
- 了解详情:用于测试不同场景的 Chrome 标志。
如果您经常通过命令行标志使用不同的 Chrome 渠道,则可能需要为每个渠道创建函数,并将这些函数添加到 shell RC 文件中。例如,在 macOS 上:
- 打开终端。
- 创建一个函数:
cf(){ open -a 'Google Chrome Canary' --args $\*; }
- 通过使用标志调用该函数来使用该函数。例如:
cf --enable-features=TrackingProtection3pcd
弃用试用
Chrome 正在针对第三方 Cookie 提供弃用 试用服务。借助这些 API,遇到服务中断的网站或服务可以申请更多时间,以摆脱第三方 Cookie 依赖关系。参与第一方或第三方试用会使针对嵌入式服务以及将这类 Cookie 用于非广告用例的网站暂时取消对第三方 Cookie 的限制。
- 屏蔽第三方 Cookie 的用户设置和屏蔽第三方 Cookie 的 Chrome 标志会阻止您因参与了某个弃用试用计划而访问第三方 Cookie。
- 用于测试不同场景的 Chrome 标志说明了如何允许或禁止参与弃用试用。
弃用试用宽限期
Chrome 为已注册第一方或第三方弃用试用且符合条件的源提供宽限期,在此期间它们会部署弃用试用令牌。在宽限期内,参与者即使尚未部署试用令牌,也可以在 Chrome 中访问第三方 Cookie。
- 屏蔽所有第三方 Cookie 的用户设置和屏蔽第三方 Cookie 的 Chrome 标志会阻止因宽限期激活而访问第三方 Cookie。
- 用于测试不同场景的 Chrome 标志解释了如何允许或禁止激活宽限期。
基本网站例外情况
我们为提供重要服务的某些网站提供了临时豁免,允许这些网站继续访问第三方 Cookie,而无需部署弃用试用令牌。
- 由于用户设置(屏蔽所有第三方 Cookie)和屏蔽第三方 Cookie 的 Chrome 标记,因重要网站豁免而对第三方 Cookie 的访问权限遭到阻止。
- 基础网站可以参阅用于测试不同场景的 Chrome 标记中的说明,以说明允许或禁止启用宽限期。如果禁止启用宽限期,则会停用必需网站豁免项。
基于启发法的异常
在第三方 Cookie 逐步淘汰过程中,Chrome 会使用启发法,在特定场景中为预定义的流程授予对第三方 Cookie 的临时访问权限,以减少中断。这是一项临时措施,预计随着网站迁移到长期解决方案,启发法将来会被彻底移除。
基于启发法的异常场景详细介绍了 Chrome 会在哪些特定场景中自动授予对第三方 Cookie 的访问权限。
通过基于启发法的异常演示,您可以测试在采用和不使用启发式算法例外情况的情况下对第三方 Cookie 的访问。
- 允许第三方 Cookie 的基于启发法的例外情况会被用户设置和企业政策所替换,从而屏蔽所有第三方 Cookie。
- 用于测试不同场景的 Chrome 标志说明了如何允许或禁止基于启发法的异常。
Chrome 协助测试
Chrome 协助测试模式可让网站在不使用第三方 Cookie 的情况下预览网站的运作方式。系统会将一定百分比的 Chrome 客户端随机分配给模式 A 或模式 B 实验组之一,并为每个实验组提供一个可通过请求标头或 navigator.cookieDeprecationLabel 访问的标签。
将实验组加入模式 A 不会影响 Chrome 行为,包括对第三方 Cookie 的行为。共有 4 个模式 B 实验组,随机分配给总共 1% 的 Chrome 客户端(4 个实验组各占 0.25%)。系统会为分配给其中任一实验组的 Chrome 客户端屏蔽 Cookie。
Chrome 还限制了 20% 的 Chrome Canary 版、开发者版和 Beta 版客户端的 Cookie。
- Chrome 客户端可以访问添加到允许使用第三方 Cookie 的网站的网站的第三方 Cookie,即使客户端被分配到模式 B 实验组(所有实验组默认都会屏蔽第三方 Cookie)也是如此。
- 用于测试不同场景的 Chrome 标志说明了如何为当前 Chrome 客户端允许、禁止或强制设置 Chrome 协助的测试实验组。
Chrome 企业版政策
如果 BlockThirdPartyCookies 政策已停用,则会允许跨网站 Cookie。如果此政策已启用,系统会阻止这些网页设置第三方 Cookie。如果此政策未设置,系统会默认允许第三方 Cookie,并允许用户阻止来自 chrome://settings
的第三方 Cookie。
如需了解详情,请参阅 Chrome 企业版的帮助中心文章。
- 用户无法通过
chrome://settings
或 Chrome 标志替换 Enterprise 政策。
了解 Cookie 状态
本部分介绍了如何检查用户或网站是允许还是屏蔽第三方 Cookie。
chrome://settings
检查 chrome://settings/cookies
(或 chrome://settings/trackingProtection
)中是否存在屏蔽第三方 Cookie、限制第三方 Cookie 或针对特定网站允许第三方 Cookie 的用户设置。
同样,请检查 chrome://settings/content/siteData
,了解允许或阻止来自各个网域的数据存储(包括 Cookie)的设置。
chrome://policy
如果您使用的是 Chrome 企业版环境,那么浏览器中设置的政策可能会为您带来与用户的体验截然不同的体验,反之亦然。对于测试,您可能需要考虑使用虚拟机或非受管设备。
chrome://policy
页面会显示为 Chrome 企业版安装所管理的浏览器设置的政策。
Chrome 企业版政策介绍了如何设置政策来阻止第三方 Cookie 或允许特定网站使用第三方 Cookie。
Chrome 开发者工具
“问题”“应用”和“网络”面板会提供有关 Cookie 的信息,并显示浏览器是否阻止了第三方 Cookie。
- 审核 您对 Cookie 的使用情况介绍了如何评估您网站上的第三方 Cookie 使用情况。
- 查看、添加、修改和删除 Cookie 介绍了如何在 Chrome 开发者工具中使用 Cookie。
“应用”面板会提供有关源试用的信息,还会显示网站是否注册了第三方 Cookie 弃用试用计划。
Chrome 开发者工具文档详细介绍了如何添加、修改和删除 Cookie,以及如何识别和检查第三方 Cookie。
Privacy Sandbox 分析工具 (PSAT)
PSAT Chrome 扩展程序向 Chrome 开发者工具中添加了一些工具,以帮助了解 Cookie 使用情况,并就可保护隐私的新 Chrome API 提供指导。
PSAT 还提供了命令行界面。
- 要了解详情、提交问题以及提出功能请求,请访问:github.com/GoogleChromeLabs/ps-analysis-tool
用于测试的网站
Privacy Sandbox 团队维护着多个网站来支持第三方 Cookie 测试:
- 设置第三方 Cookie:third-party-cookies.glitch.me
- 设置第三方 Cookie 并提供弃用试用令牌:3pc-dt.glitch.me
- 调试 Chrome 协助测试设置: chrome-facilitated-testing.glitch.me
Privacy Sandbox 演示提供了两个关联网站,可帮助您尝试各种核心用户体验历程和用例,并了解第三方 Cookie 限制对这些网站有何影响。
更改 Chrome 客户端或个人资料
Chrome 客户端相当于设备上的一个安装,即用户数据目录。
每个 Chrome 配置文件都是用户数据目录中的一个子目录。
如果您从命令行运行 Chrome,则可以使用 --user-data-dir 标志设置用户数据目录。
这意味着,您可以使用单独的用户数据目录进行开发,该目录应有自己的配置文件子目录。创建新的用户数据目录可让 Chrome 运行起来就像是新安装的一样,这有助于调试与个人资料相关的问题。
若要使用新的临时用户目录从命令行运行 Chrome,请使用以下标志:
--user-data-dir=$(mktemp -d)