JWT ID令牌没有'名称'根据权利要求

时间:2015-06-25 09:41:33

标签: android oauth google-api google-play-services

我成功从GoogleAuthUtil.getToken()获取了ID令牌,但遗漏了Google特定的name声明。

最糟糕的是,在我的黑客历史中的某个时刻,出现了name声明,但我无法重现它......

这可能是范围问题吗?

我在GitHub上创建了一个小型Android Studio项目来重现此问题:https://github.com/axd1967/idtokentest

感谢

编辑1: 结果给出了

{   "iss": "accounts.google.com",   "sub": "xxxx9706996760", 
"azp":
"xxxx1l3r7a.apps.googleusercontent.com",
"email": "xxx@gmail.com",   "email_verified": true,   "aud":
"xxxx7sc3slj.apps.googleusercontent.com",
"iat": 1435043752,   "exp": 1435047352 }

范围(见here

Scopes.PLUS_LOGIN, Scopes.PLUS_ME

我还补充道 https://www.googleapis.com/auth/plus.profile.emails.read

在过去的黑客狂热的某个时刻,我得到了

{
  "iss": "accounts.google.com",
  "sub": "xxx39959706996760",
  "azp": "xxxr7a.apps.googleusercontent.com",
  "email": "xxxv@gmail.com",
  "email_verified": true,
  "aud": "340233876420-xxx.apps.googleusercontent.com",
  "iat": 1434027665,
  "exp": 1434031265,
  "name": "ZoneIT Dev",
  "picture": "https://lh6.googleusercontent.com/-q849EbIzef0/AAAAAAAAAAI/AAAAAAAAACE/qUzFOcDLA4w/s96-c/photo.jpg",
  "given_name": "ZoneIT",
  "family_name": "Dev"
}

编辑2:是否可能无法以这种方式获取这些字段(使用ID令牌)?

编辑3 根据here,请注意只有email可用...

0 个答案:

没有答案