我认为你现在一定已经得到你询问的答案了。 但我仍然会回答这个问题,以帮助其他有兴趣实现类似目标的用户。
所以要使用 Google 账户访问符号来验证并授权您的应用程序用户使用您自己的服务, 您必须遵循以下步骤 。
- Create a project in Google Cloud Console with two components (Create components by clicking on "APIs $ Auth >Credetials" option on left pane ). First component will be your web component (e.g. web-services) and second component is your android application.
- Try to get access token by querying account manager in android app by executing GoogleAuthUtil.getToken() method by passing the current context, email id(queried using account manager) and scope as ("audience:server:client_id:").
- Where is the "Client ID" parameter of the web component available under the project created on Google Cloud Console.
- The method will return you the ID token encoded as JSON web token or JWT.
- This ID token everything that a app would require to authenticate user on server.
- The ID token consists of following parameters
是:总是账户.google.com
aud:项目网络部分的客户身份
azp: 项目 Android App部分的客户身份
电子邮件: 识别用户请求代号的电子邮件, 以及其他一些字段 。
将此标记传递给您在 https( 强制) 上的网络组件( 例如网络服务) 。 网络组件和 Android 组件客户端 ID 已经存储 。
在服务器上解码接收到的 JWT ID 标记后, 请检查该标记的“ 审计” 参数和存储的 Web 组件客户端 ID 是否相等, 从而验证用户 。
使用 GoogleAuthUtil.getToken () 方法时, 可以通过读取 JWT ID 的电子邮件参数来获取用户身份, 该参数指定了在应用 GoogleAuthUtil. get Token () 方法时在应用程序中访问 Id 符号时提供的电子邮件代号 。
注意 : 只有执行 GoogleAuthUtil.getToken () 才能通过执行 GoogleAuthUtil 获取关于和机器人的ID 符号。 如果在 Google Cloud Console 项目下创建和配置机器人组件时使用的相同证书所标的应用程序是相同的, GetToken () 则只能通过执行 GoogleAuthUtil. get Token () 。
更多信息可在“”上查询,https:// developmenters.google.com/counts/docs/CrossClientAuth” rel=“nofollow”>https://developers.google.com/counts/docs/CrossClientAuth 。