1
我正在开发使用Google OAuth2保护的REST API(如果有问题,使用java)。该方法如下:Google OAuth2 - 正确的用法?
- UI是通过谷歌认证,并具有:
google id
+token id
, google id
+token id
均被送到每个请求API为标题,- REST API使用URL https://www.googleapis.com/oauth2/v3/tokeninfo?id_token=token_id到获得JSON类似于下面(其中
token_id
来自请求头):
JSON:
{
"iss": "accounts.google.com",
"iat": "14791197651",
"exp": "14795233651",
"at_hash": "xDLxhM85hTYU0KwU-rhPgg",
"aud": "541950199239-s1fag9iaes0s99g4feipe0ih0l75km1l.apps.googleusercontent.com",
"sub": "197763402127980067798",
"azp": "541950819239-s5fag9iaes9s99g4feipe0ih0l75km1l.apps.googleusercontent.com",
"alg": "RS256",
"kid": "db9e3d7cdd1b4178010f89af11cfd37400061afc"
}
并比较sub
值google id
从请求头,
- 如果由
google id
检查通过和用户是在我们的数据库中,则用户被授权使用的REST API(额外的逻辑可能适用)。
是否需要完成正确的工作流程或额外检查?
在此先感谢您的帮助。
不错,谢谢! – user2770362