使用 OAuth 的 App Flip 連結 Google 帳戶

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

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

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

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

要求

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

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

设计准则

本部分介绍了 App Flip 账号关联意见征求界面的设计要求和建议。Google 调用您的应用后,应用会向用户显示同意屏幕。

要求

  1. 您必须说明用户的账号将与 Google 相关联,而不是与特定 Google 产品(例如 Google Home 或 Google 助理)相关联。

建议

建议您执行以下操作:

  1. 显示 Google 的隐私权政策。在同意屏幕上添加指向 Google 隐私权政策的链接。

  2. 要分享的数据。使用简洁明了的语言告知用户 Google 需要哪些数据以及为何需要这些数据。

  3. 明确的号召性用语。在用户同意页面上提供明确的号召性用语,例如“同意并关联”。这是因为用户需要了解他们需要与 Google 分享哪些数据才能关联账号。

  4. 能够取消。为用户提供返回或取消链接的途径,如果用户选择不进行关联。

  5. 能够解除关联。提供一种供用户解除关联的机制,例如指向他们在您的平台上账号设置的网址。或者,您也可以添加指向 Google 账号的链接,以便用户管理其关联的账号。

  6. 能够更改用户账号。建议用户切换账号的方法。如果用户通常拥有多个账号,这种做法尤为有益。

    • 如果用户必须关闭意见征求界面才能切换账号,请向 Google 发送可恢复的错误,以便用户可以使用 OAuth 关联隐式流程登录所需的账号。
  7. 添加您的徽标。在同意屏幕上显示您的公司徽标。 按照您的样式准则放置徽标。如果您还想显示 Google 的徽标,请参阅徽标和商标

此图显示了同意页面的示例,其中突出显示了设计用户意见征求页面时应遵循的具体要求和建议。
图 2. 账号关联意见征求界面设计指南。

在原生應用程式中實作 App Flip

如要實作 App Flip,您必須修改應用程式中的使用者授權碼,以便接受 Google 提供的深層連結。

如要在 Android 應用程式中支援 App Flip,請按照 Android 實作指南中的指示操作。

如要在 iOS 應用程式中支援 App Flip,請按照 iOS 實作指南中的說明操作。

測試應用程式快速連結

在提供經過驗證的正式版應用程式和正常運作的 OAuth 2.0 伺服器之前,系統可能會使用範例和測試應用程式來模擬 App Flip。

在 App Flip 期間,Google 應用程式會先開啟您的應用程式,然後向 OAuth 2.0 伺服器要求授權碼回應,在最後一個步驟中,系統會將回應傳回 Google 應用程式。

必要條件

如要模擬 Google 應用程式並觸發啟動應用程式的意圖,請下載並安裝 AndroidiOS 適用的 App Flip Test Tool。

下載並安裝適用於 AndroidiOS 的 App Flip 範例,以模擬應用程式並選取 OAuth 2.0 回應類型。

測試序列

  1. 開啟應用程式翻轉測試工具。
  2. 按下 Try Flip! 即可啟動 App Flip 範例應用程式。
  3. 從「Sample」應用程式中的圓形按鈕選取回應。
  4. 按下 Send 即可將模擬的 OAuth 2.0 回應傳回至測試工具。
  5. 請查看測試工具記錄訊息,找出 auth_code 或錯誤詳細資料。

正式版測試

完成註冊程序和 OAuth 2.0 伺服器實作後,您可以在實際工作環境中測試 App Flip。

建議使用單一 Google 帳戶和工作專屬電子郵件地址進行自動化測試。

以 Google 帳戶持有人身分登入後,您可以使用「已連結的帳戶」查看帳戶連結狀態。您也可以在這裡取消連結帳戶,以便重複測試。

您也可以選擇導入 RISC,透過程式碼取消連結,並通知 Google 這項變更。