Safari 禁止了跨域追踪,为什么登录 Google 还是能同步登录不同域名下的 YouTube?用了什么黑科技?

2022-08-28 22:03:56 +08:00
 edis0n0
2751 次点击
所在节点    程序员
7 条回复
ShallowAi
2022-08-28 22:58:57 +08:00
你登录的时候是请求到 google 的登录 api 然后重定向回你访问的网页的,登录 api 会存储你的当前状态和 session 信息,其他网站只需要请求这个 api 即可。总会有办法的,这也不算追踪吧。
Cavolo
2022-08-28 23:03:09 +08:00
你没发现 iOS 上 Google 登录状态是整个系统范围内的吗。YouTube apl 登录了 gmail app 不需要二次登录。
codehz
2022-08-28 23:03:23 +08:00
你有没有观察过登录谷歌的时候会跳转到 youtube 一次再回到谷歌页面上(
fuzzsh
2022-08-28 23:13:28 +08:00
SSO
Archeb
2022-08-29 01:02:43 +08:00
看了这个帖子,我去测试了一下

打开 www.google.com -> 自动跳转到 www.google.com.hk -> 点击登录,跳转到 accounts.google.com -> 登陆完成,跳转回 www.google.com.hk

此时打开 www.google.comwww.google.com.hk 都有我的登陆状态,而 www.google.co.jpwww.youtube.com 都没有显示登陆状态

点击 google.co.jp 的登录,跳转链如下所示



所以很明显是跳转到 SSO 域( accounts.google.com )然后再跳转到国别 SSO 域( account.google.co.jp )设置一个 session ,从而让该域下的站点都拥有谷歌登陆状态。

YouTube 原理同上。
Archeb
2022-08-29 01:06:05 +08:00
补充:限制跨域追踪也不会限制主动跳转带参数,所以 302 跳转过程中就会携带所需的鉴权信息作为 URL 参数,从而让登录会话跨域共享。
leeg810312
2022-08-29 01:30:39 +08:00
禁止跨域追踪,应该不会影响 sso

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/876032

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX