概要

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

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

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

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

要求

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

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

OAuth リンクの認証コードフローの詳細については、OAuth サーバーを実装するをご覧ください。

设计准则

本部分介绍了 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. 账号关联意见征求界面设计指南。

OAuth ベースのアプリ切り替えを設定する

以下のセクションでは、OAuth ベースのアプリ切り替えの前提条件と、アプリ切り替えプロジェクトを Actions Console で設定する方法について説明します。

アクションを作成して OAuth 2.0 サーバーを設定する

アプリ切り替えを設定する前に、以下を行う必要があります。

Actions Console でアプリ切り替えを設定する

次のセクションでは、Actions Console でアプリ切り替えを構成する方法を説明します。

  1. 上部のナビゲーションにある [Develop](開発)をクリックし、左側のナビゲーションで [Account linking](アカウントのリンク)をクリックします。
  2. [アカウントのリンク] の横にあるスイッチをオンにします。
  3. [Account creation](アカウントの作成)で、[No, I only want to allow account creation on my website](いいえ、自分のウェブサイトでのアカウントの作成のみを許可します)を選択します。
  4. [次へ] をクリックします。
  5. [Linking type](リンクタイプ)で、[OAuth] と [Authorization code](認証コード)を選択します。
  6. [次へ] をクリックします。
  7. [OAuth Client information] のすべてのフィールドを入力します。(アプリ切り替えがサポートされていない場合は、通常の OAuth がフォールバックとして使用されます)。
  8. [次へ] をクリックします。
  9. [Use your app for account linking (optional)] で、[Enable for iOS](iOS で有効にする)をオンにします。
  10. [Universal Link](ユニバーサル リンク)フィールドに入力します。ユニバーサル リンクについて詳しくは、コンテンツへのアプリとウェブサイトのリンクを許可する をご覧ください。
  11. クライアントを設定したい場合は、スコープを追加し、[Configure your client (optional)](クライアントを構成する(省略可))で [Add scope](スコープを追加)をクリックします。構成しない場合は、[次へ] をクリックします。
  12. [Testing instructions](テスト手順)で、プレースホルダとして「test」(または任意の文字列)を入力します。(テスト アカウントでこのフィールドを入力する必要があるのは、実際にアクションを提出して公開する場合のみです)。
  13. [保存] をクリックします。

次のセクションでは、iOS アプリまたは Android アプリにアプリ切り替えを実装します。

ネイティブ アプリにアプリ切り替えを実装する

アプリ切り替えを実装するには、Google からのディープリンクを許可するようにアプリのユーザー認可コードを変更する必要があります。

デバイスでアプリ切り替えをテストする

アクションを作成し、コンソールとアプリでアプリ切り替えを設定したら、モバイル デバイスでアプリ切り替えをテストできます。Google アシスタント アプリを使ってアプリ切り替えをテストすることもできます。

アシスタント アプリからアプリ切り替えをテストする手順は次のとおりです。

  1. Actions Console に移動して、プロジェクトを選択します。
  2. 上部のナビゲーションで [Test](テスト)をクリックします。
  3. アシスタント アプリからアカウントのリンクフローをトリガーします。
    1. Google アシスタント アプリを起動します。
    2. [設定] をクリックします。
    3. [アシスタント] タブで、[スマートホーム] をクリックします。
    4. [追加(+)] をクリックします。
    5. プロバイダのリストからアクションを選択します。リストの先頭に「[test]」が付きます。リストから [test] アクションを選択する場合、アプリを開く必要があります。
    6. アプリが起動したことを確認し、承認フローのテストを開始します。