medium.com 如何知道我的 Google 帐户?

信息安全 账户安全 跨域
2021-08-30 04:56:51

我今天早些时候在medium.com 上看了一篇文章,而不是他们通常向回访者显示的烦人的全屏弹出窗口,我在右上角看到了这个:

谷歌弹出窗口

就在中间页面上,他们有我的名字和谷歌电子邮件地址!我在 Medium 上没有帐户,除了阅读我收到的直接链接的各种文章外,我什么也没做。

媒体如何显示此弹出窗口?我不记得告诉他们我是谁,而且所有关于跨域保护的讨论似乎都不应该是可能的。

我想这可能是谷歌提供的弹出功能,但这听起来很容易被任何网站滥用来窃取我的姓名和电子邮件。我使用 Firefox,所以它不可能是一些疯狂的 chrome 功能。

2个回答

Web 开发人员可以将 Google 登录与他们的网站集成

Google 登录管理 OAuth 2.0 流程和令牌生命周期,简化您与 Google API 的集成。用户始终可以随时撤销对应用程序的访问权限。

当您登录时,网站可以访问您的姓名或电子邮件等信息。有很多方法可以自定义登录按钮或弹出窗口,这有时就是为什么它看起来与页面集成在一起,而实际上它是由 Google 通过 HTTPS 提供的。这也是该网站能够显示您的姓名的原因,因为它实际上是由 Google API 提供的。在这个特定的例子中,使用了一个 iframe 来防止信息由于同源策略而与 Medium 共享。

他们通过 iframe 实现这一点,该 iframe 具有目前已关闭的 Google测试版功能之一。您可以在以下 Medium 网站的屏幕截图中看到 iframe。

Medium 网站和谷歌 iframe 的截图

但是,这并不意味着Medium 将能够访问您的用户信息。iframe 内部的内容是沙盒化的,只有在 Google 添加同源策略权限以允许 Medium 的域访问它时才能访问。有关使用 iframe 的跨源策略的更多信息,请参阅Medium 文章。