【Web技术】FedCM和后第三方Cookie时代OAuth流的影响
第三方Cookie已经成为用户跟踪和隐私问题的代名词。2021年,谷歌提出了一项计划,将第三方cookie从基于铬的浏览器中退役,并推出FedCM API。在本博客中,我们将讨论这一变化,以及它对传统OAuth流意味着什么。
目录
- 介绍
- 什么是第三方cookie
- 对OAuth协议的影响
- FedCM简介
- 支持FedCM:身份提供商如何适应
- 结论
介绍
联合身份一直是身份验证领域的游戏规则改变者。凭借更高的安全性、更顺畅的登录和更大的转换,它已成为应用程序最受欢迎的身份验证选择。尽管有几种方法可以启用联合身份,但OAuth协议已成为最受欢迎的协议。2022年,谷歌为保护人们的在线隐私而创建的隐私沙盒团队发布了一份公告,宣布发布和测试新的以隐私为重点的API,最终目标是到2024年从Chrome中退役第三方cookie。他们为什么这么做?如何访问不同域的cookie?这对OAuth有何影响?在这个博客中,我们将探讨这些问题以及更多内容。
【Web技术】如何处理浏览器中的第三方cookie阻止
许多浏览器会阻止第三方cookie,即对浏览器地址栏中显示的域以外的域的请求。这些cookie也称为跨域cookie。此块打破了隐式流,需要新的身份验证模式才能成功登录用户。在Microsoft身份平台中,我们使用带有代码交换验证密钥【Proof Key for Code Exchange】(PKCE)的授权流和刷新令牌,以在第三方cookie被阻止时保持用户登录。
什么是智能跟踪保护(ITP)和隐私沙盒?
Apple Safari有一个默认的隐私保护功能,称为智能跟踪保护(ITP)。Chrome有一个名为“隐私沙盒”的浏览器隐私倡议。这些举措涵盖了浏览器的许多不同的浏览器隐私努力,并具有不同的时间表。这两项工作都会阻止跨域请求的“第三方”cookie,Safari和Brave默认会阻止第三方cookie。Chrome最近宣布,他们将开始默认屏蔽第三方cookie。隐私沙盒包括对分区存储的更改以及第三方cookie阻止。
一种常见的用户跟踪方式是在后台将iframe加载到第三方网站,并使用cookie在互联网上关联用户。不幸的是,这种模式也是在单页应用程序(SPA)中实现隐式流的标准方式。阻止第三方cookie以保护用户隐私的浏览器也可以阻止SPA的功能。
【Web技术】3pc:第三方cookie
本文解释了什么是第三方cookie,描述了与它们相关的问题,并解释了如何解决这些问题。
什么是第三方cookie?
cookie与特定的域[domain ]和方案[scheme ](通常为https)相关联,如果设置了“设置cookie域”属性,则也可能与子域相关联。
- 如果cookie域和方案与用户正在查看的当前页面(浏览器地址栏中显示的URL)匹配,则cookie被认为与页面来自同一网站,并被称为第一方cookie。
- 如果域和方案不同,则cookie不被视为来自同一网站,并被称为第三方cookie。
注意:第三方cookie有时被称为跨站点cookie。这可以说是一个更准确的名称,因为第三方cookie意味着第三方公司或组织的所有权。然而,无论您是否拥有所有相关网站,行为和潜在问题都是相同的。例如,一个网站可能会访问来自其拥有的不同域的资源,例如图像。
当用户第一次访问页面、跟随到同一网站上的另一页面的内部链接或请求驻留在同一网站的资源(例如,嵌入式图像、网页字体或JavaScript文件)时,可以设置第一方cookie。
【Web技术】谷歌逐步淘汰第三方cookie:影响和解决方案
虽然谷歌可能还没有完成在Chrome中逐步淘汰第三方cookie的计划,但结局仍将发生。其他浏览器几年前就已经做出了这一改变。我们研究第三方cookie在营销中的用途,为什么会出现问题,什么将取代它们,等等。
谷歌再次推迟了在Chrome中逐步淘汰第三方cookie的计划,将预期的开始时间从2024年底推迟到2025年初。这一决定受到英国竞争与市场管理局(CMA)等监管机构的持续监测和反馈的影响,使企业有更多的时间适应用户隐私是在线互动关键方面的未来。
对于营销人员和企业来说,这一延长的时间线是一个重新思考和完善其数字战略的机会,而不会感到恐慌。数字广告正在发展,要求在保持有效性的同时尊重用户隐私的新策略和解决方案。
本指南深入探讨了谷歌分阶段取消第三方cookie的影响,探讨了这对谷歌广告和更广泛的Chrome生态系统等工具意味着什么。
我们正在深入研究谷歌第三方cookie对数字广告的意义,谷歌逐步淘汰它们的时间表,以及这对谷歌广告和Chrome网络浏览器等平台的意义。
【前端开发】与业界合作发展CHIPS
探讨Chrome团队在实施CHIPS时面临的两个挑战,以及社区反馈如何在提案设计的演变中发挥关键作用。
Cookies Having Independent Partitioned State(CHIPS)是一种隐私沙盒技术,允许开发者将cookie选择到“分区”存储中,每个顶级网站都有单独的cookie罐。
CHIPS的示例用例包括跨站点子资源需要某些会话或持久状态概念的任何场景,这些概念的范围是用户在单个顶级站点上的活动,如第三方聊天小部件、地图嵌入、子资源CDN负载平衡、无头CMS提供方等。
CHIPS的开发目标是成为一个开放的网络标准。PrivacyCG正在对其进行讨论,并进行了为期7个月的原产地试验,在此期间,Chrome团队收到了有益的反馈。在开发过程中,团队与主要利益相关者合作,探索反馈,从而更新设计,更好地服务于网络生态系统。
让我们探讨一下Chrome团队在实施CHIPS时面临的两个挑战,以及社区反馈如何在提案设计的发展中发挥关键作用。
删除主机前缀且无域要求
为了鼓励良好的安全实践,CHIPS设计要求cookie只能由安全协议设置并通过安全协议发送,并且分区cookie必须使用secure设置。
【前端开发】第三方Cookie的终结——Chrome将于2024年弃用它们
2024年1月初,谷歌宣布并开始逐步淘汰第三方cookie。由于1%的Chrome用户以及Safari和Firefox用户已经阻止了这些应用,公司需要尽快开始远离这些应用。
1月4日,我们将开始测试跟踪保护,这是一项新功能,通过默认情况下限制网站访问第三方cookie来限制跨网站跟踪。我们将向全球1%的Chrome用户推出这项服务,这是我们隐私沙盒计划的一个关键里程碑,该计划将在2024年下半年逐步淘汰所有人的第三方cookie,但需解决英国竞争与市场管理局遗留的任何竞争问题。
1%是3200万用户,这并非微不足道。
【Web开发】Chrome 将逐步取消对第三方 Cookie 的支持,Storage Access API (SAA) 可让这些用例继续正常运行
Chrome 将逐步取消对第三方 Cookie 的支持,并停止对存储空间进行分区,以减少跨网站跟踪。这给在嵌入式上下文中依赖 Cookie 和其他存储机制的网站和服务带来了挑战,难以实现身份验证等用户体验历程。Storage Access API (SAA) 可让这些用例继续正常运行,同时尽可能限制跨网站跟踪。
【Web开发】具有独立分区状态 (CHIPS) 的 Cookie
允许开发者选择将 Cookie 放入“分区”存储,并为每个顶级网站使用单独的 Cookie jar。
【Web开发】为应对第三方 Cookie 限制做好准备
为方便测试,Chrome 已默认为 1% 的 Chrome 稳定版客户端以及 20% 的 Canary、开发者版和 Beta 版客户端限制第三方 Cookie。在测试期间,网站和服务必须开始针对第三方 Cookie 限制做好准备,包括改用更注重隐私保护的替代方案。为了解决英国竞争和市场管理局剩余的任何竞争疑虑,我们设想从 2025 年初开始继续弃用第三方 Cookie。