OAuth ベースのアプリ切り替えリンク(アプリ切り替え)を使用すると、ユーザーが認証システム内のアカウントを Google アカウントにすばやく簡単にリンクできます。ユーザーがアカウントのリンク プロセスを開始した際、アプリがユーザーのスマートフォンにインストールされている場合は、ユーザーはシームレスにアプリを切り替えてユーザー認証を取得します。
このアプローチでは、ユーザーが認証のためにユーザー名とパスワードを再入力する必要がなく、より迅速かつ簡単にリンクできます。アプリ切り替えでは、アプリ上のユーザーのアカウントの認証情報を使用します。ユーザーが Google アカウントとアプリをリンクすると、ユーザーは開発した統合を活用できます。
アプリ切り替えは、iOS アプリと Android アプリの両方に設定できます。
![この図は、ユーザーが Google アカウントを認証システムにリンクするための手順を示しています。最初のスクリーンショットは、Google アカウントがアプリにリンクされている場合に、ユーザーがアプリを選択する方法を示しています。2 番目のスクリーンショットは、Google アカウントとアプリをリンクする確認の画面です。3 番目のスクリーンショットは、Google アプリで正常にリンクされたユーザー アカウントを示しています。](https://developers-dot-devsite-v2-prod.appspot.com/static/identity/images/app-flip-flow.png?authuser=6&hl=ja)
要件
アプリ切り替えを実装するには、次の要件を満たす必要があります。
- Android アプリまたは iOS アプリが必要です。
- OAuth 2.0 認証コードフローをサポートする OAuth 2.0 サーバーを所有、管理、保守する必要があります。
設計ガイドライン
このセクションでは、アプリフリップ アカウントのリンク 同意画面の設計要件と推奨事項について説明します。Google からアプリが呼び出されると、同意画面が表示されます。
要件
- ユーザーのアカウントが特定の Google サービス(Google Home や Google アシスタントなど)ではなく、Google にリンクされていることを示す必要があります。
推奨事項
次の手順を行うことをおすすめします。
Google のプライバシー ポリシーを表示する。同意画面に Google のプライバシー ポリシーへのリンクを含めます。
共有するデータ。明確で簡潔な表現を使って、Google が必要とするデータとその理由をユーザーに伝えます。
行動を促す明確なフレーズがある。「同意してリンクする」など、行動を促す明確なフレーズを明記する。これは、ユーザーがアカウントをリンクするために Google と共有する必要があるデータを理解する必要があるからです。
解約が可能。ユーザーがリンクしない場合に、戻るかキャンセルする方法を提供する。
リンクを解除する機能。プラットフォーム上でのアカウント設定の URL など、リンクを解除するメカニズムをユーザーに提供します。あるいは、ユーザーがリンクされたアカウントを管理できる Google アカウントへのリンクを含めることもできます。
ユーザー アカウントを変更できること。ユーザーがアカウントを切り替える方法を提案する。これは、ユーザーが複数のアカウントを持つ傾向がある場合に特に役立ちます。
- ユーザーがアカウントを切り替えて同意画面を閉じる必要がある場合は、OAuth リンクと暗黙的フローを使用して、ユーザーが希望するアカウントにログインできるように、回復可能なエラーを Google に送信します。
ロゴを掲載する。同意画面に会社のロゴを表示します。 スタイル ガイドラインを使用してロゴを配置します。Google のロゴも表示する場合は、ロゴと商標をご覧ください。
![同意画面の例は、個々の同意要件と、同意画面を設計する際に従うべき推奨事項を示したものです。](https://developers-dot-devsite-v2-prod.appspot.com/static/identity/images/app-flip-guidance.png?authuser=6&hl=ja)
ネイティブ アプリにアプリ切り替えを実装する
アプリ切り替えを実装するには、Google からのディープリンクを受け入れるようにアプリ内のユーザー認証コードを変更する必要があります。
Android アプリでアプリ切り替えをサポートするには、Android 実装ガイドの手順を行ってください。
iOS アプリでアプリ切り替えをサポートするには、iOS 実装ガイドの手順を行ってください。
アプリ切り替えをテストする
アプリ切り替えは、サンプルアプリとテストアプリを使用してシミュレートできます。これは、確認済みの本番環境アプリと有効な OAuth 2.0 サーバーが利用可能になる前に実施できます。
アプリ切り替え中、Google アプリはまずアプリを開いて、OAuth 2.0 サーバーから認証コードレスポンスをリクエストします。最後のステップでは、レスポンスが Google アプリに返されます。
Prerequisites
Google アプリをシミュレートし、アプリを起動するインテントをトリガーするには、Android および iOS 用のアプリ切り替えテストツールをダウンロードしてインストールします。
Android 用と iOS 用のアプリ切り替えサンプルをダウンロードしてインストールします。アプリをシミュレートして、OAuth 2.0 レスポンス タイプを選択します。
テスト シーケンス
- アプリ切り替えテストツールを開きます。
Try Flip!
を押して、アプリ切り替えサンプルアプリを起動します。- サンプルアプリのラジオボタンからレスポンスを選択します。
Send
を押すと、シミュレートされた OAuth 2.0 レスポンスがテストツールに返されます。- テストツールのログ メッセージで auth_code またはエラーの詳細を確認します。
本番環境でのテスト
登録と OAuth 2.0 サーバー実装の完了後に、本番環境でアプリフリップをテストできます。
自動テストでは、1 つの Google アカウントとタスク固有のメールアドレスを使用することをおすすめします。
アカウントのリンク状態は、Google アカウント所有者としてログインしているときに、リンクされたアカウントを使用して表示できます。繰り返しテスト間でも、アカウントのリンクを解除できます。
任意で RISC を実装し、プログラムによってリンク解除を行い、Google に変更を通知することもできます。