基于 OAuth 的应用快速关联 (App Flip) 关联功能可让用户快速将其在您的身份验证系统中的账号关联到其 Google 账号。 如果用户在发起账户关联过程时手机上已安装您的应用,系统会顺畅地将他们转到您的应用以获取用户授权。
这种方法可提供更快的账户关联过程,因为用户无需重新输入用户名和密码进行身份验证;相反,App Flip 会利用用户在您的应用中的账号凭据。用户将其 Google 账号与您的应用关联后,便可利用您开发的任何集成。
您可以为 iOS 和 Android 应用设置 App Flip。
要求
如需实现 App Flip,您必须满足以下要求:
- 您必须拥有 Android 或 iOS 应用。
- 您必须拥有、管理和维护支持 OAuth 2.0 授权代码流程的 OAuth 2.0 服务器。
基于 OAuth 的 App Flip 流程
以下序列图详细说明了用户、Google 应用、您的应用和您的授权服务器之间针对 App Flip 的交互。
角色和职责
下表定义了 App Flip 流程中执行者的角色和职责。
| 执行者 / 组件 | GAL 角色 | 职责 |
|---|---|---|
| Google 应用 / 服务器 | OAuth 客户端 | 发起账户关联过程,触发到您的移动应用深层链接,将授权代码交换为令牌,并安全地存储这些令牌以访问您服务的 API。 |
| 您的应用 | 授权代理 | 对用户进行身份验证(通常使用现有应用凭据), 获取意见征求,并从您的服务器检索授权代码。 |
| 您的授权服务器 | 授权服务器 | 验证授权代码和刷新令牌,并向 Google 服务器颁发访问 令牌。 |
Weitere Informationen zum OAuth-Verknüpfungsfluss mit Autorisierungscode finden Sie unter OAuth-Server implementieren.
Gestaltungsrichtlinien
In diesem Abschnitt werden die Designanforderungen und ‑empfehlungen für den Zustimmungsbildschirm für die App-Flip-Kontoverknüpfung beschrieben. Nachdem Google Ihre App aufgerufen hat, zeigt Ihre App dem Nutzer den Zustimmungsbildschirm an.
Voraussetzungen
- Sie müssen dem Nutzer mitteilen, dass sein Konto mit Google verknüpft wird, nicht mit einem bestimmten Google-Produkt wie Google Home oder Google Assistant.
Empfehlungen
Wir empfehlen Folgendes:
Datenschutzerklärung von Google anzeigen Fügen Sie auf dem Zustimmungsbildschirm einen Link zur Datenschutzerklärung von Google ein.
Zu teilende Daten: Verwenden Sie eine klare und prägnante Sprache, um dem Nutzer mitzuteilen, welche seiner Daten Google benötigt und warum.
Klarer Call-to-Action: Geben Sie auf dem Einwilligungsbildschirm einen klaren Call-to-Action an, z. B. „Zustimmen und verknüpfen“. Nutzer müssen verstehen, welche Daten sie mit Google teilen müssen, um ihre Konten zu verknüpfen.
Möglichkeit zum Ablehnen oder Kündigen: Bieten Sie Nutzern die Möglichkeit, zurückzugehen, die Verknüpfung abzulehnen oder abzubrechen, wenn sie keine Verknüpfung wünschen.
Verknüpfung aufheben: Bieten Sie Nutzern eine Möglichkeit, die Verknüpfung aufzuheben, z. B. eine URL zu ihren Kontoeinstellungen auf Ihrer Plattform. Alternativ können Sie einen Link zu Google-Konto einfügen, über den Nutzer ihr verknüpftes Konto verwalten können.
Nutzerkonto ändern: Schlagen Sie Nutzern eine Methode vor, mit der sie ihr(e) Konto(s) wechseln können. Das ist besonders dann von Vorteil, wenn Nutzer mehrere Konten haben.
- Wenn ein Nutzer den Zustimmungsbildschirm schließen muss, um das Konto zu wechseln, senden Sie einen behebaren Fehler an Google, damit sich der Nutzer mit OAuth-Verknüpfung und dem impliziten Ablauf im gewünschten Konto anmelden kann.
Fügen Sie Ihr Logo ein. Ihr Unternehmenslogo auf dem Zustimmungsbildschirm anzeigen Platzieren Sie Ihr Logo gemäß Ihren Style-Richtlinien. Wenn Sie auch das Google-Logo anzeigen möchten, lesen Sie den Abschnitt Logos und Marken.
App Flip auf OAuth-Basis einrichten
In den folgenden Abschnitten werden die Voraussetzungen für den App-Flip auf OAuth-Basis und die Konfiguration Ihres App-Flip-Projekts in der Actions Console beschrieben.
Aktion erstellen und OAuth 2.0-Server einrichten
Bevor Sie App Flip konfigurieren können, müssen Sie Folgendes tun:
- Aktion erstellen Folgen Sie der Anleitung im Abschnitt Projekt erstellen, um eine Aktion zu erstellen.
- OAuth 2.0-Server einrichten Weitere Informationen zum Einrichten eines OAuth-Servers finden Sie unter OAuth-Kontoverknüpfung implementieren.
App Flip in der Actions Console konfigurieren
Im folgenden Abschnitt wird beschrieben, wie Sie App Flip in der Actions Console konfigurieren.
- Klicken Sie oben in der Navigationsleiste auf Entwickeln. Klicken Sie dann links in der Navigationsleiste auf Konto verknüpfen.
- Aktiviere den Schalter neben Kontoverknüpfung.
- Wählen Sie unter Kontoerstellung die Option Nein, ich möchte nur die Kontoerstellung auf meiner Website zulassen aus.
- Klicken Sie auf Weiter.
- Wählen Sie unter Verknüpfungstyp in den Drop-down-Menüs OAuth und Autorisierungscode aus.
- Klicken Sie auf Weiter.
- Füllen Sie alle Felder unter OAuth-Clientinformationen aus. Wenn App Flip nicht unterstützt wird, wird stattdessen das reguläre OAuth verwendet.
- Klicken Sie auf Weiter.
- Klicken Sie unter App für die Kontoverknüpfung verwenden (optional) das Kästchen Für iOS aktivieren an.
- Füllen Sie das Feld Universeller Link aus. Weitere Informationen zu universellen Links
- Wenn Sie Ihren Client optional konfigurieren möchten, fügen Sie unter Client konfigurieren (optional) Bereiche hinzu und klicken Sie auf Bereich hinzufügen. Klicken Sie andernfalls auf Weiter.
- Geben Sie unter „Testanleitung“
test(oder einen beliebigen anderen String) als Platzhalter ein. Das Ausfüllen dieses Felds mit einem Testkonto ist nur erforderlich, wenn Sie Ihre Action tatsächlich zur Veröffentlichung einreichen. - Klicken Sie auf Speichern.
Sie können jetzt mit dem nächsten Abschnitt fortfahren, um App Flip in Ihrer iOS- oder Android-App zu implementieren.
App Flip in Ihre nativen Apps implementieren
Wenn Sie App Flip implementieren möchten, müssen Sie den Nutzerautorisierungscode in Ihrer App so ändern, dass ein Deeplink von Google akzeptiert wird.
App Flip auf Ihrem Gerät testen
Nachdem Sie eine Aktion erstellt und App Flip in der Konsole und in Ihrer App konfiguriert haben, können Sie App Flip auf Ihrem Mobilgerät testen. Sie können die Google Assistant App verwenden, um App Flip zu testen.
So testen Sie App Flip über die Assistant App:
- Rufen Sie die Actions Console auf und wählen Sie Ihr Projekt aus.
- Klicken Sie oben in der Navigationsleiste auf Test.
- So starten Sie den Workflow zur Kontoverknüpfung über die Assistant App:
- Öffnen Sie die Google Assistant App.
- Klicken Sie auf Einstellungen.
- Klicken Sie auf dem Tab „Assistant“ auf Smart-Home-Steuerung.
- Klicken Sie auf Hinzufügen(+).
- Wählen Sie Ihre Aktion aus der Liste der Anbieter aus. In der Liste wird das Präfix „[test]“ vorangestellt. Wenn Sie Ihre [Test]-Aktion in der Liste auswählen, sollte Ihre App geöffnet werden.
- Prüfen Sie, ob Ihre App gestartet wurde, und beginnen Sie mit dem Test Ihres Autorisierungsablaufs.