将 Google 账号关联与基于 OAuth 的应用快速关联搭配使用

借助基于 OAuth 的应用快速关联 (App Flip),您的用户可以轻松快速地将其在您的身份验证系统中的账号与其 Google 账号相关联。如果用户在发起账号关联流程时您的应用已安装在其手机上,系统会将用户顺畅地转到您的应用以获取用户授权。

这种方法可简化关联流程,因为用户无需重新输入用户名和密码即可进行身份验证;相反,App Flip 会利用用户在您应用中的账号凭据。用户将其 Google 账号与您的应用相关联后,便可使用您开发的任何集成。

您可以为 iOS 和 Android 应用设置应用快速关联。

此图展示了用户将其 Google 账号与您的身份验证系统相关联的步骤。第一个屏幕截图显示了如果用户的 Google 账号已与您的应用相关联,他们可以如何选择您的应用。第二个屏幕截图显示了确认将 Google 账号与您的应用相关联的操作。第三个屏幕截图显示了 Google 应用中已成功关联的用户账号。
图 1. 在用户手机上使用 App Flip 进行账号关联。

要求

如需实现应用翻转,您必须满足以下要求:

  • 您必须拥有 Android 或 iOS 应用。
  • 您必须拥有、管理和维护一个支持 OAuth 2.0 授权代码流程的 OAuth 2.0 服务器。

Design guidelines

This section describes the design requirements and recommendations for the App Flip account linking consent screen. After Google calls your app, your app displays the consent screen to the user.

Requirements

  1. You must communicate that the user’s account is being linked to Google, not to a specific Google product, such as Google Home or Google Assistant.

Recommendations

We recommend that you do the following:

  1. Display Google's Privacy Policy. Include a link to Google’s Privacy Policy on the consent screen.

  2. Data to be shared. Use clear and concise language to tell the user what data of theirs Google requires and why.

  3. Clear call-to-action. State a clear call-to-action on your consent screen, such as “Agree and link.” This is because users need to understand what data they're required to share with Google to link their accounts.

  4. Ability to cancel. Provide a way for users to go back or cancel, if they choose not to link.

  5. Ability to unlink. Offer a mechanism for users to unlink, such as a URL to their account settings on your platform. Alternatively, you can include a link to Google Account where users can manage their linked account.

  6. Ability to change user account. Suggest a method for users to switch their account(s). This is especially beneficial if users tend to have multiple accounts.

    • If a user must close the consent screen to switch accounts, send a recoverable error to Google so the user can sign in to the desired account with OAuth linking and the implicit flow.
  7. Include your logo. Display your company logo on the consent screen. Use your style guidelines to place your logo. If you wish to also display Google's logo, see Logos and trademarks.

This figure shows an example consent screen with call-outs to the
            individual requirements and recommendations to be followed when
            you design a user consent screen.
Figure 2. Account linking consent screen design guidelines.

在原生应用中实现应用快速关联

如需实现 App Flip,您需要修改应用中的用户授权代码,以接受来自 Google 的深层链接。

如需在 Android 应用中支持应用快速关联,请按照 Android 实现指南中的说明操作。

如需在 iOS 应用中支持应用快速关联,请按照 iOS 实现指南中的说明操作。

测试 App Flip

在有经过验证的正式版应用和可用的 OAuth 2.0 服务器之前,您可以使用示例应用和测试应用来模拟应用切换。

在 App Flip 期间,Google 应用会先打开您的应用,然后该应用会请求从您的 OAuth 2.0 服务器获取授权代码响应,最后将响应返回给 Google 应用。

前提条件

如需模拟 Google 应用并触发用于启动应用的 intent,请下载并安装适用于 AndroidiOS 的应用快速关联测试工具。

下载并安装适用于 AndroidiOS 的应用翻转示例,以模拟您的应用并选择 OAuth 2.0 响应类型。

测试序列

  1. 打开应用快速关联测试工具。
  2. Try Flip! 即可启动你的 App Flip 示例应用。
  3. 从“示例”应用中的单选按钮中选择一个回复。
  4. Send 将模拟的 OAuth 2.0 响应返回给测试工具。
  5. 请查看测试工具日志消息,了解 auth_code 或错误详情。

生产环境测试

完成注册和完成 OAuth 2.0 服务器实现后,系统可能会在生产环境中测试应用快速关联。

建议您为自动化测试使用一个 Google 账号和一个专门用于任务的电子邮件地址

登录 Google 账号并以账号持有人的身份登录后,您可以使用关联的账号查看账号关联状态。您还可以在此处解除重复测试之间的账号关联。

(可选)您可以选择实现 RISC,以程序化方式解除关联并通知 Google 发生的更改。