我正在使用 Google Script 引擎构建一个网络应用程序。该应用程序使用“使用 Google 登录”按钮登录,因此我需要一个在 Google 云平台中具有凭据的项目,该项目要求我在“授权 JavaScript 来源”字段中引入一个域。 xxx.googleusercontent.com 之类的域名曾经可以使用,但现在似乎已被禁止。谷歌云平台凭证 https://i.stack.imgur.com/6xskH.png
由于该应用程序由 Google Script 平台托管,因此我尝试了 URIhttps://script.google.com https://script.google.com,但它不起作用。它不断地说:
不是客户端的有效来源:https://n-lvkfgw4qjsttvut5eeun3inieub2bbse7ukpiti-0lu-script.googleusercontent.com https://n-lvkfgw4qjsttvut5eeun3inieub2bbse7ukpiti-0lu-script.googleusercontent.com尚未注册客户端 ID 577491057122-qlfn0853m85t0u7gsd4rr69rulghts54.apps.googleusercontent.com。请前往https://console.developers.google.com/ https://console.developers.google.com/并为您的项目的客户端 ID 注册此源。”
错误:“idpiframe_初始化失败”
有人知道这个问题吗?
Answer:
谷歌问题跟踪器上报告的一个错误对此进行了讨论 - 由于安全问题,该问题已被禁止。因此,当前根本没有办法将 Apps 脚本 Web 应用程序用作 JavaScript 源。
更多信息:
有问题的错误报告:
- 无法将 *.googleusercontent.com 添加到授权的 JavaScript 来源中 https://issuetracker.google.com/170740549
由于似乎没有有关这一变化的公开信息,因此进行了调查。 2021 年 3 月 31 日,一名 Google 员工最终做出了回应,解释了更改的原因,并按照预期行为关闭了该问题:
Current OAuth 2.0 使用政策 https://developers.google.com/identity/protocols/oauth2/policies要求应用程序使用安全的 JavaScript 源和重定向您拥有的域名 https://developers.google.com/identity/protocols/oauth2/policies?hl=en#domains。虽然允许使用某些共享域(例如在 *.web.app 上运行的 Firebase 应用程序),但使用*.googleusercontent.com
因为 OAuth 来源或重定向 URI 被阻止,以确保用户帐户的安全和隐私。
文档已更新于重定向 URI 验证规则 https://developers.google.com/identity/protocols/oauth2/web-server#uri-validation and JavaScript 来源验证规则 https://developers.google.com/identity/protocols/oauth2/javascript-implicit-flow#origin-validation已更新以反映这一点:
主机域不能是“googleusercontent.com”。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)