【问题标题】:Fine-grained Google OAuth Scope细粒度的 Google OAuth 范围
【发布时间】:2013-01-07 02:30:31
【问题描述】:

作为一个隐私偏执狂,我似乎无法通过 Google OAuth2 文档找到这一点 - 我只能请求电子邮件地址和用户标识符吗?

我记得有一段时间我可以通过使用来获取电子邮件地址和用户标识符

https://www.googleapis.com/auth/userinfo.email

现在似乎没有userinfo.profile,google 只返回用户电子邮件地址。不过,除了个人资料范围内的用户标识符之外,我不需要任何其他东西......对我来说,这是一种浪费,并且请求个人资料许可(访问生日/位置)可能会引发不必要的隐私问题(好吧,无论如何对我来说。)

https://www.googleapis.com/auth/userinfo.profile

请求 Google 用户标识符是否 = 获得 userinfo.profile 权限?

【问题讨论】:

    标签: oauth scope oauth-2.0 google-oauth


    【解决方案1】:

    实际上你可以只请求 user_ID

    目前支持的方式是添加范围 https//www.googleapis。 com/auth/plus.me

    未来我们还将为此目的支持“openid”,但这也会导致服务器返回符合 OpenIDConnect 的响应,并且由于该标准仍未最终确定,使用它现在会使您面临向后不兼容的 API 更改。

    【讨论】:

    • 太好了,有办法。只是想知道“plus.me”是否是一个稳定的 api?我在各种 google+ 文档中找到它,但在主要的 google oauth 文档中没有,“plus.me”在权限方面需要什么(“与您的 g+ 个人资料相关联”),我看到它只返回您提到的 ID。跨度>
    • 只是为了回答我自己的问题,即使对于没有 g+ 个人资料的谷歌帐户,它也会返回正确的 ID。但如果此用户不拥有 g+ 个人资料,则对 googleapis.com/plus/v1/people/me 的进一步请求将返回 404 not found
    【解决方案2】:

    是的,您需要userinfo.profile 范围来获取除电子邮件地址以外的任何内容,确认该地址已经过验证并且在 Google Apps 用户帐户上具有高清(hd 属性让您知道它是 Google Apps 帐户,而不是消费者)。这 3 个属性是 userinfo.email 返回的全部。

    【讨论】:

      猜你喜欢
      • 2015-05-27
      • 2014-09-16
      • 2022-11-10
      • 1970-01-01
      • 2019-07-07
      • 2021-11-30
      • 2018-04-30
      • 1970-01-01
      • 2016-05-23
      相关资源
      最近更新 更多