如何解决Android 一键登录,生成的 ID Token 中缺少 nonce
根据文档setNonce
我希望随机数将作为 IDToken 的声明包含在内,但是,在使用以下代码设置随机数后:
oneTapClient = Identity.getSignInClient(getContext());
BeginSignInRequest signInRequest = BeginSignInRequest.builder()
.setGoogleIdTokenRequestOptions(BeginSignInRequest.GoogleIdTokenRequestOptions.builder()
.setSupported(true)
.setServerClientId(clientId)
.setNonce("5qb6kvo0q8drrzs50dkv5uzci1ft7p1")
.setFilterByAuthorizedAccounts(false)
.build())
.build();
并从以下位置获取 id 令牌:
SignInCredential credential = null;
try {
credential = oneTapClient.getSignInCredentialFromIntent(data);
String idToken = credential.getGoogleIdToken();
} catch (ApiException e) {
...
}
解码返回的idToken,nonce丢失。
这是缺陷吗?还是我错过了什么?
此外,在文档 Verify the integrity of the ID token 中,它没有提到 ID Token Validation 下定义的 nonce 验证
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。