有没有办法*只*通过Google的OAuth2实施获取用户的电子邮件地址?

时间:2014-06-25 13:32:48

标签: google-oauth oauth2-playground

我的页面上有“使用Google+登录”按钮。当人们点击它时,我希望他们授权的事物是“查看您的电子邮件地址。”

想要“了解您在Google上的身份”或“查看有关您帐户的基本信息”。我只想要他们的电子邮件地址。

我正在使用OAuth 2.0 Playground(https://developers.google.com/oauthplayground/)并看到:


范围:email

请求:

  1. 了解您在Google上的身份
  2. 查看您的电子邮件地址

  3. 范围:https://www.googleapis.com/auth/userinfo.email(并且不推荐使用这个)

    请求:

    1. 了解您在Google上的身份
    2. 查看您的电子邮件地址

2 个答案:

答案 0 :(得分:8)

确实,我也注意到了这一点。我找到了an explanation from February 2013 here

  

这是一种有意的更改,可以更准确地向用户传达正在授予的权限集。通过用户的电子邮件地址的知识,可以通过间接方式定位用户的简档地址。因此,为了更准确的披露,我们正在促使用户批准此类披露。

答案 1 :(得分:4)

不完全符合您的要求,但合并profileemail至少可以为第一个提供一个不那么可怕的描述:

  

这个应用程序想:

     
      
  • 查看有关您帐户的基本信息
  •   
  • 查看您的电子邮件地址
  •   

......在第一句话的帮助下:

  

更多信息

     

查看您的姓名,公开个人资料网址和照片   查看您的性别
  查看您所在的国家/地区,语言和时区

对我而言,这比模糊这个应用程序请求允许您将自己与公开的Google个人资料相关联哪个获得<{3}} 知道你是谁Google + ,未明确使用范围profile或使用范围openid时。

the More Info

顺便说一句:LinkedIn的OAuth 2也总是需要用户,即使应用程序只需要一些唯一标识符。除了Google的解释to grant access to Your Profile Overview之外,我认为LinkedIn确实希望开发人员使用他们的网络功能。