Google Chrome中第三方Google登录Cookie的访问问题
你观察到的现象主要源于Chrome第三方Cookie淘汰计划中的例外机制,以及Google登录自身的特殊实现:
Chrome第一方集合(First-Party Sets)例外
Chrome的第三方Cookie限制对属于同一"第一方集合"的域名网开一面。Google已将旗下核心域名(如accounts.google.com、google.com等)纳入官方第一方集合,当你的页面嵌入Google登录组件时,组件向accounts.google.com发起的请求会被判定为同一集合内的请求,因此Cookie仍会正常发送,不受第三方Cookie禁用的影响。浏览器原生身份集成机制
Google登录的"一键登录"(One Tap)功能会利用Chrome内置的身份验证集成能力,比如Chrome与Google账户的原生绑定。这种情况下,身份信息验证不需要依赖第三方Cookie传递,而是通过浏览器直接向Google验证你的登录状态,之后再将身份信息返回给嵌入组件,这也是你能看到个人信息的原因之一。请求上下文的特殊性
你在开发者工具中看到的Cookie,并非普通的第三方Cookie传递。Google登录组件的请求实际是从accounts.google.com的上下文发起的(比如iframe内嵌的是Google的页面),对accounts.google.com来说这些属于第一方请求,自然会携带自身的Cookie——而Chrome的第三方Cookie限制针对的是"第三方域名向第一方域名发送请求时携带Cookie"的场景,反过来的情况并不受限制。
内容的提问来源于stack exchange,提问作者Mathis

