借助基于 OAuth 的应用快速关联(应用快速关联),您的用户可以轻松地将其在身份验证系统中的帐号关联到其 Google 帐号。如果您的应用在用户启动帐号关联流程时安装在用户手机上,则可以无缝同步到您的应用以获取用户授权。
此方法可让用户更快、更轻松地完成关联流程,因为用户无需重新输入用户名和密码进行身份验证;而应用快速关联可利用您应用中的用户帐号的凭据。用户将其 Google 帐号与您的应用关联后,他们即可利用您开发的任何集成。
您可以为 iOS 和 Android 应用设置应用快速关联。
![此图显示了用户将其 Google 帐号与身份验证系统关联的步骤。第一张屏幕截图显示了在用户的 Google 帐号与您的应用相关联的情况下,用户如何选择您的应用。第二张屏幕截图显示了将 Google 帐号与应用相关联的确认信息。第三张屏幕截图显示了 Google 应用中已成功关联的用户帐号。](https://developers.google.cn/static/identity/images/app-flip-flow.png?authuser=3&hl=ja)
要求
如需实现应用快速关联,您必须满足以下要求:
- 您必须拥有 Android 或 iOS 应用。
- 您必须拥有、管理和维护支持 OAuth 2.0 授权代码流的 OAuth 2.0 服务器。
OAuth リンク認可コードフローの詳細については、OAuth サーバーを実装するをご覧ください。
設計ガイドライン
このセクションでは、アプリフリップ アカウントのリンク 同意画面の設計要件と推奨事項について説明します。Google からアプリが呼び出されると、同意画面が表示されます。
要件
- ユーザーのアカウントが特定の Google サービス(Google Home や Google アシスタントなど)ではなく、Google にリンクされていることを示す必要があります。
推奨事項
次の手順を行うことをおすすめします。
Google のプライバシー ポリシーを表示する。同意画面に Google のプライバシー ポリシーへのリンクを含めます。
共有するデータ。明確で簡潔な表現を使って、Google が必要とするデータとその理由をユーザーに伝えます。
行動を促す明確なフレーズがある。「同意してリンクする」など、行動を促す明確なフレーズを明記する。これは、ユーザーがアカウントをリンクするために Google と共有する必要があるデータを理解する必要があるからです。
解約が可能。ユーザーがリンクしない場合に、戻るかキャンセルする方法を提供する。
リンクを解除する機能。プラットフォーム上でのアカウント設定の URL など、リンクを解除するメカニズムをユーザーに提供します。あるいは、ユーザーがリンクされたアカウントを管理できる Google アカウントへのリンクを含めることもできます。
ユーザー アカウントを変更できること。ユーザーがアカウントを切り替える方法を提案する。これは、ユーザーが複数のアカウントを持つ傾向がある場合に特に役立ちます。
- ユーザーがアカウントを切り替えて同意画面を閉じる必要がある場合は、OAuth リンクと暗黙的フローを使用して、ユーザーが希望するアカウントにログインできるように、回復可能なエラーを Google に送信します。
ロゴを掲載する。同意画面に会社のロゴを表示します。 スタイル ガイドラインを使用してロゴを配置します。Google のロゴも表示する場合は、ロゴと商標をご覧ください。
![同意画面の例は、個々の同意要件と、同意画面を設計する際に従うべき推奨事項を示したものです。](https://developers.google.cn/static/identity/images/app-flip-guidance.png?authuser=3&hl=ja)
OAuth ベースのアプリ切り替えを設定する
以下のセクションでは、OAuth ベースのアプリ切り替えの前提条件と、アプリ切り替えプロジェクトを Actions Console で設定する方法について説明します。
アクションを作成して OAuth 2.0 サーバーを設定する
アプリ切り替えを設定する前に、以下を行う必要があります。
- アクションを作成する。アクションを作成するには、プロジェクトの作成セクションの手順に沿って操作します。
- OAuth 2.0 サーバーを設定する。OAuth サーバーの設定の詳細については、OAuth アカウントのリンクを実装するをご覧ください。
Actions Console でアプリ切り替えを設定する
次のセクションでは、Actions Console でアプリ切り替えを構成する方法を説明します。
- 上部のナビゲーションにある [Develop](開発)をクリックし、次に、左側のナビゲーションで [アカウントのリンク] をクリックします。
- [アカウントのリンク] の横にあるスイッチをオンに切り替えます。
- [Account creation] で、[No, I only want to allow account creation on my website] を選択します。
- [次へ] をクリックします。
- [リンクタイプ] で、プルダウン メニューから [OAuth] と [認可コード] を選択します。
- [Next] をクリックします。
- [OAuth クライアント情報] の下にあるすべてのフィールドに入力します。(アプリ切り替えがサポートされていない場合は、通常の OAuth がフォールバックとして使用されます)。
- [次へ] をクリックします。
- [アプリでのアカウントのリンク(省略可)] で [iOS で有効にする] をオンにします。
- [Universal Link](ユニバーサル リンク)フィールドに入力します。ユニバーサル リンクについて詳しくは、アプリとウェブサイトのコンテンツへのリンクを許可する をご覧ください。
- 必要に応じてクライアントを構成する場合は、スコープを追加して、[Configure your client (optional)](クライアントの構成(省略可))で [Addscope](スコープを追加)をクリックします。そうでない場合は、[次へ] をクリックします。
- [テスト手順] で、プレースホルダとして「
test
」などの文字列を入力します。(このフィールドにテスト アカウントを入力する必要があるのは、公開するアクションを実際に送信する場合のみです)。 - [保存] をクリックします。
次のセクションに進んで iOS アプリまたは Android アプリにアプリ切り替えを実装できます。
ネイティブ アプリにアプリ切り替えを実装する
アプリ切り替えを実装するには、Google からのディープリンクを許可するようにアプリのユーザー認可コードを変更する必要があります。
デバイスでアプリ切り替えをテストする
アクションを作成し、コンソールとアプリでアプリ切り替えを設定したら、モバイル デバイスでアプリ切り替えをテストできます。アプリ切り替えのテストには Google アシスタント アプリを使用できます。
アシスタント アプリからアプリ切り替えをテストする手順は次のとおりです。
- Actions Console に移動して、プロジェクトを選択します。
- 上部のナビゲーションで [Test](テスト)をクリックします。
- アシスタント アプリからアカウントのリンクフローをトリガーします。
- Google アシスタント アプリを起動します。
- [設定] をクリックします。
- [アシスタント] タブで、[スマートホーム] をクリックします。
- [追加(+)] をクリックします。
- プロバイダのリストからアクションを選択します。リストの先頭に「[test]」が付きます。リストから [test] アクションを選択する場合、アプリを開く必要があります。
- アプリが起動したことを確認し、承認フローのテストを開始します。