在建议屏幕上单击“现在不”后,Google-Auth 显示空白弹出窗口

问题描述 投票:0回答:1

弹出窗口中的我的 Google Auth 流程适用于大多数已完成个人资料并添加了恢复选项的 Google 用户。 对于一些尚未完成 Google 个人资料的用户,会出现以下建议屏幕:

Suggestions screen

个人资料建议请注意,弹出窗口中的网址现在是https://gds.google.com(之前是accounts.google.com)。 点击“现在不”后, 不是现在

Not now screen

身份验证流程中断并出现空白屏幕。请注意,我们正在从 gds.google.com 重定向到accounts.google.com

Blank Screen

浏览器控制台中的错误跟踪是 无法读取未定义的属性“postMessage”

我觉得弹出窗口在从 account.google.com 重定向到 gds.google.com 时丢失了对我网站窗口的引用

我的网络应用程序设置了标题 Cross-Origin-Opener-Policy: same-origin-allow-popups。

浏览器/版本 所有浏览器

预期行为在“建议”中单击“现在不”后,应继续进行身份验证并调用在初始化语句中注册的回调。 window.google.accounts.id.initialize({callback})

实际行为在“建议”屏幕中单击“现在不”后,弹出窗口变为空白,浏览器在控制台中给出以下错误无法读取未定义的属性“postMessage”

javascript google-cloud-platform google-signin
1个回答
0
投票

由于

Cross-Origin-Opener-Policy: same-origin-allow-popups
标头,跨源重定向会中断弹出窗口和 Web 应用程序主窗口之间的通信。此策略限制来自不同来源的窗口之间的通信(与打开者来自同一来源的弹出窗口除外)。

如果您将策略放宽到

same-origin
或完全删除它,即使在重定向之后,弹出窗口(可能来自
gds.google.com
)和主窗口(在您网站的域上)之间也将允许通信。但是,它会允许来自任何来源的弹出窗口与您的主窗口交互,从而削弱安全性。

由于弹出窗口中的 Google Auth 流程适用于大多数已完成个人资料的 Google 用户,因此您可能需要考虑修改您的注册流程,以鼓励用户在允许 Google Auth 之前完成其个人资料。这可能会减少遇到“建议”屏幕和随后的重定向问题的用户数量。

© www.soinside.com 2019 - 2024. All rights reserved.