【问题标题】:Large Google OAuth2 consent screen when connecting with Google Apps account与 Google Apps 帐户连接时的大型 Google OAuth2 同意屏幕
【发布时间】:2015-01-28 03:43:15
【问题描述】:

使用 OAuth2 登录我们的应用时,常规 Google(即 gmail)帐户会显示一次同意屏幕,然后不再提示。当我使用基于 Google Apps 的 Google 帐户登录时,每次提到“您的域管理员已批准访问 X”时,都会在同一个屏幕上提示我。此外 - 同意屏幕上有我的 Google 头像的巨大 (512x512) 图像。

任何关于为什么这些不同的见解?

我正在请求以下范围 ['profile', 'email', ] 并且我已将 'access_type' 设置为 'offline' 以便获得刷新令牌。

解决此问题是我们将应用程序置于 GAMv2 上的先决条件。

【问题讨论】:

  • 您是否使用域个人的服务帐户?
  • @soitof 不确定你的意思 - 你能澄清一下吗?

标签: google-apps google-apps-marketplace google-oauth


【解决方案1】:

即使使用市场应用程序,当请求“离线”时也会显示同意屏幕。由于管理员已经批准了该应用程序,因此会显示一个简短的屏幕。但是,每个用户只能显示一次。

如果您反复看到它,请确保:

  • 您没有在请求中指定approval_prompt=force。这将导致每次都显示同意屏幕
  • 您实际上是在用授权代码交换刷新令牌。

至于用户界面,那是谷歌在页面样式方面的问题。

【讨论】:

  • 我已经确认我们没有在请求中发送 approval_prompt=force。我肯定要求离线访问,并且希望第一次出现同意屏幕,但每次都会出现屏幕。
【解决方案2】:

这些请求的范围(个人资料、电子邮件)是否与应用程序市场范围不同?如果是这样,请尝试在市场 SDK 范围列表中请求与您的应用程序相同的范围。

【讨论】:

  • 它们是等价的作用域。我正在请求“个人资料”和“电子邮件”范围,但是 Google Apps 控制台会自动为您添加已弃用的范围(googleapis.com/auth/userinfo.emailgoogleapis.com/auth/userinfo.profile)。如果您尝试添加“电子邮件”或“个人资料”范围,它会报告“重复的身份验证范围。别名为 ...”。
猜你喜欢
  • 2022-01-10
  • 1970-01-01
  • 2020-10-05
  • 2019-10-05
  • 1970-01-01
  • 2013-01-15
  • 1970-01-01
  • 2021-08-30
  • 1970-01-01
相关资源
最近更新 更多