该应用程序暂时禁用使用Google登录。

43

我们在尝试对谷歌进行身份验证时,会出现以下屏幕。 我们尝试进行身份验证的应用程序是用于内部开发的,并且我们没有向用户发布它。

有任何想法为什么会发生这种情况吗?

输入图像描述

我们之前遇到了未经验证的应用程序屏幕(如下所示),但现在身份验证已被禁用。

输入图像描述


我已经遇到这个问题很长时间了。但是,我能够继续按下面的按钮进行操作。现在我看不到这些按钮了。有什么变化吗? - dvelopp
2
是的,我们以前曾经遇到过未验证应用程序屏幕,并通过点击“高级”按钮继续。但是现在当我们尝试时,我们面临着这个屏幕。我不知道发生了什么变化,因为谷歌没有更新相关信息。 - Ranjani
5
有任何最新进展吗?问题是如何解决的? - dvelopp
3个回答

13

OAuth客户端验证

从2017年7月18日开始,请求特定敏感OAuth权限的Google OAuth客户端将受到Google审核。

如果您仅在与在Google开发者控制台中创建项目的同一帐户下使用它,则无需进行审核。您可以在此帮助中心文章中了解更多关于这个变化的信息。

此变更适用于Google OAuth Web客户端,包括所有应用脚本项目使用的客户端。通过向Google验证您的应用程序,您可以从授权流程中删除未经验证的应用程序屏幕,并使用户相信您的应用程序是非恶意的。

申请验证后,大约需要一周时间才能生效。


2
今天之前,按下面的按钮是可以继续进行的。现在似乎不可能了。在我的应用程序得到验证之前,我该怎么处理?谢谢。 - dvelopp
谷歌只在有限的时间内给予你该选项,以便在审核过程中继续工作。 即使是仅供内部使用的应用程序也属于谷歌的应用程序指南方针必须经过验证的应用程序范畴。 谷歌无法知道这只是一个内部应用程序,即使是内部用户也应受到保护。 如果您想要那个屏幕,请创建一个新项目,将新的客户端 ID 添加到您的项目中,然后您将再次拥有它。 - Linda Lawton - DaImTo
3
不行。我们提交了应用程序进行审批,在经过反复讨论(大约持续了15天)后,我们收到回复说开发/测试应用程序无法获得批准。我们仍然面临这个错误屏幕,所有的开发工作都因此停滞不前。是的,第一个要点提到了那个。但我认为它只针对Google在我们进入身份验证之前显示的未经验证的应用程序屏幕。没有任何说明表明如果应用程序尚未经过验证,它将被阻止(即使它还没有发布在市场上)。 - Ranjani
我认为这是你需要向Google提出的问题,而不是Stack能够帮助解决的。我们只能告诉你,你的问题的原因是你没有进行验证,你需要进行验证。如何进行验证将取决于你和Google之间的事情。我已经向团队发送了一些评论,认为文档需要更加清晰,但我并不负责Google的文档,所以只能从开发者的角度给他们建议。 - Linda Lawton - DaImTo
1
那么,你验证了你的开发和测试环境了吗? - dvelopp
显示剩余9条评论

11

在我们的Google Cloud平台开发项目中,当这种情况发生时,我在一段时间之前发现了这个帖子。

您可以在未进行验证的情况下使用项目进行开发。这没有问题。但是有一些限制(更多信息请参见此处此处)。基本上,我们达到了100个用户访问应用程序的限制。这很奇怪,因为我们只测试了几个账户(5-6),直到我们发现,如果您卸载并重新安装应用程序,则会将其视为新用户。由于我们正在测试增量授权,因此我们反复卸载/安装应用程序很多次,并且达到了配额。

当您达到此限制时,您将看到消息“该应用暂时禁用与Google登录”,只有来自托管项目所在组织的用户才能访问该应用程序。因此,我们无法使用来自演示域或Gmail账户的帐户进行测试。

唯一可用的解决方案是通过OAuth验证表单(即使您不想发布应用程序),但是执行此操作存在问题。例如,必须从有效的OAuth URL中删除http://localhost。以及与开发相关的更多问题。

但这最近已经改变了。在本周内,我访问了Google Cloud平台的OAuth凭据屏幕(API和服务 > 凭据 > OAuth同意屏幕),现在页面已经不同了。现在,您不需要指定“授权的JavaScript起源”和“授权的重定向URI”,您只需要指定用于Google API的范围和授权域。然后,在页面底部,您将找到“提交验证”按钮,该过程将开始。您还会在右侧找到一些信息:

 

关于同意屏幕

    

同意屏幕告诉您的用户谁正在请求访问他们的数据以及您要求访问的数据类型。

    

OAuth开发人员验证

    

为了保护您和您的用户,您的同意屏幕可能需要由Google进行验证。没有验证,您的用户将看到一个额外的页面,指示您的应用程序未经Google验证。

    

如果需要验证

    

您的应用程序类型是公共的,并且您添加了敏感范围,则需要验证。验证可能需要几天时间才能完成。在处理过程中,您将收到电子邮件更新。

    

保存但不发布

    

即使您的同意屏幕未发布,您仍然可以使用以下限制与用户测试您的应用程序:

  • 敏感范围限制为100个授权请求,超过后需要进行验证

  • 用户会看到一个额外的页面,指示您的应用程序未经 Google 验证。

要包括“已授权的 JavaScript 来源”和“已授权的重定向 URI”,您需要前往 APIs&Services>Credentials,在那里单击您的OAuth 2.0 客户端 ID。那里将有一个表单,您可以在其中添加它们。

在我们的情况下,从Google获得回复需要1天时间。在电子邮件中,有一些指示来通过验证。我们必须使用上传到 YouTube 的视频回复该电子邮件,涉及以下几点:

  1. 用户如何在您的应用上注册并授予所请求的敏感范围的访问权限?
  2. 最终用户看到的 OAuth 同意屏幕
  3. 您的应用程序如何使用所请求的权限提供服务给开发人员?
  4. 用于测试用户注册流程并验证项目功能的测试帐户电子邮件和密码。

我们录制了一个涉及点1、2和3的视频,并向他们发送了一个测试帐户以完成点4。

1天后,我们收到了来自 Google 的另一个回复,确认我们的项目已通过验证。

所以最终问题得到解决!

希望这能帮助处于同样情况的人。对我们来说,这真的很烦人。


2
感谢提供列表,我有两个补充建议:1)在录制屏幕演示之前,您需要撤销访问权限,以确保OAuth同意屏幕将显示。2)Google希望在OAuth流程中看到您的client_id(以验证您的视频是否与请求OAuth项目匹配)。我写了一篇关于避免这些问题的文章,并在此处分享了一个示例视频:https://www.cloudsponge.com/blog/google-oauth-verification-video/ - Graeme
太好了!谢谢!我也编辑了我的答案,并包括了在哪里添加“授权JavaScript源”和“授权重定向URI”的内容。 - Ruben Lopez

3

我必须进入我的Google Apps Script设置并打开“ Google Apps Script API”设置。然后我再次尝试,脚本就可以正确执行了。

我几周前使用过该脚本,它运行得很好,因此在那时和现在之间一定发生了某些事情...不确定是什么导致了该设置的更改。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接