google +登录后推荐的身份验证方式是什么?

时间:2014-12-12 01:08:32

标签: android google-plus

我正在关注我的应用的最新Google+登录集成(https://developers.google.com/+/mobile/android/sign-in),其中包含

  

Google+登录按钮可对用户进行身份验证并对其进行管理   OAuth 2.0流程,简化了您与Google的集成   的API。

所以在用户通过google +成功登录后,(我们认为不需要手动管理令牌以及所有这些?)推荐服务器身份验证端点的安全方法是什么? (例如,将用户电子邮件传递到您自己的服务器端点,并获取用户信息?我们是否应该传递一些令牌?或会话ID?我们从谷歌+用户数据中获取?)

1 个答案:

答案 0 :(得分:1)

如果您只需要对自己的服务器进行身份验证(而不是访问任何Google托管信息),则可以使用Using Google Sign-In with your server技术,这样您就可以使用新的Google Sign In API获取令牌:< / p>

 GoogleSignInOptions gso = 
     new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)  
   .requestIdToken(getString(R.string.server_client_id))  
   .requestEmail()  
   .build(); 

server_client_id是来自Credentials page的Web应用程序的OAuth 2.0客户端ID。然后,您将从googleSignInResult.getSignInAccount().getIdToken()获取ID令牌。

然后,您可以验证服务器端的ID令牌,并且您将知道用户的电子邮件地址,并且该请求来自您的Android应用。

documentation贯穿整个工作流程,包括指出GoogleIdTokenVerifier类,这样可以更轻松地验证令牌。