Google-Kontoverknüpfung mit OAuth

Konten werden über die branchenüblichen impliziten und Autorisierungscode-Vorgänge für OAuth 2.0 verknüpft. Ihr Dienst muss OAuth 2.0-konforme Autorisierungs- und Token-Austauschendpunkte unterstützen.

Beim impliziten Ablauf öffnet Google Ihren Autorisierungsendpunkt im Browser des Nutzers. Nach der erfolgreichen Anmeldung geben Sie ein langlebiges Zugriffstoken an Google zurück. Dieses Zugriffstoken ist jetzt in jeder Anfrage enthalten, die von Google gesendet wird.

Für den Ablauf mit Autorisierungscode sind zwei Endpunkte erforderlich:

  • Den Autorisierungsendpunkt, der noch nicht angemeldeten Nutzern die Anmelde-UI anzeigt. Der Autorisierungsendpunkt erstellt auch einen kurzlebigen Autorisierungscode, um die Einwilligung der Nutzer in den angeforderten Zugriff zu erfassen.

  • Der Token-Austausch-Endpunkt, der für zwei Arten von Anzeigenplattformen verantwortlich ist:

    1. Hier wird ein Autorisierungscode gegen ein langlebiges Aktualisierungstoken und ein kurzlebiges Zugriffstoken eingetauscht. Dieser Austausch erfolgt, wenn der Nutzer die Kontoverknüpfung durchläuft.
    2. Ein langlebiges Aktualisierungstoken wird gegen ein kurzlebiges Zugriffstoken eingetauscht. Dieser Austausch erfolgt, wenn Google ein neues Zugriffstoken benötigt, weil das vorherige abgelaufen ist.

OAuth 2.0-Vorgang auswählen

Der implizite Ablauf ist zwar einfacher zu implementieren, Google empfiehlt jedoch, dass die über den impliziten Ablauf ausgestellten Zugriffstokens nie ablaufen. Das liegt daran, dass der Nutzer beim impliziten Ablauf gezwungen wird, sein Konto noch einmal zu verknüpfen, nachdem ein Token abgelaufen ist. Wenn Sie aus Sicherheitsgründen ein Ablaufdatum für Tokens benötigen, empfehlen wir Ihnen dringend, stattdessen den Ablaufvorgang für Autorisierungscodes zu verwenden.

Gestaltungsrichtlinien

In diesem Abschnitt werden die Designanforderungen und -empfehlungen für den Nutzerbildschirm beschrieben, den Sie für OAuth-Verknüpfungsvorgänge hosten. Nachdem die Funktion von der Google-App aufgerufen wurde, wird dem Nutzer auf Ihrer Plattform eine Seite zur Anmeldung bei Google und ein Bildschirm zur Einwilligung in die Kontoverknüpfung angezeigt. Nachdem der Nutzer seine Einwilligung zur Kontoverknüpfung gegeben hat, wird er zur Google-App zurückgeleitet.

Auf dieser Abbildung sind die Schritte zu sehen, die ein Nutzer ausführen muss, um sein Google-Konto mit Ihrem Authentifizierungssystem zu verknüpfen. Der erste Screenshot zeigt eine vom Nutzer initiierte Verknüpfung auf Ihrer Plattform. Das zweite Bild zeigt die Anmeldung des Nutzers bei Google. Auf dem dritten Bild ist die Einwilligung und Bestätigung des Nutzers zur Verknüpfung seines Google-Kontos mit Ihrer App zu sehen. Der letzte Screenshot zeigt ein erfolgreich verknüpftes Nutzerkonto in der Google App.
Abbildung 1. Kontoverknüpfung, Nutzeranmeldung bei Google und Einwilligungsbildschirme

Voraussetzungen

  1. Du musst angeben, dass das Konto des Nutzers mit Google verknüpft wird und nicht mit einem bestimmten Google-Produkt wie Google Home oder Google Assistant.

Empfehlungen

Wir empfehlen Folgendes:

  1. Datenschutzerklärung von Google anzeigen Fügen Sie im Zustimmungsbildschirm einen Link zur Datenschutzerklärung von Google ein.

  2. Zu teilende Daten: Informieren Sie die Nutzer in einer klaren und prägnanten Sprache darüber, welche Daten von ihnen Google benötigt und warum.

  3. Klarer Call-to-Action Geben Sie auf dem Einwilligungsbildschirm einen klaren Call-to-Action an, z. B. „Zustimmen und verknüpfen“. Nutzer müssen wissen, welche Daten sie mit Google teilen müssen, um ihre Konten zu verknüpfen.

  4. Kündigung möglich. Bieten Sie Nutzern die Möglichkeit, zurückzugehen oder abzubrechen, wenn sie die Verknüpfung nicht herstellen möchten.

  5. Klarer Anmeldevorgang. Achten Sie darauf, dass Nutzer eine eindeutige Methode für die Anmeldung in ihrem Google-Konto haben, z. B. Felder für ihren Nutzernamen und das Passwort oder Über Google anmelden.

  6. Möglichkeit, die Verknüpfung aufzuheben Bieten Sie Nutzern die Möglichkeit, die Verknüpfung aufzuheben, z. B. über eine URL zu ihren Kontoeinstellungen auf Ihrer Plattform. Alternativ können Sie einen Link zum Google-Konto einfügen, über den Nutzer ihr verknüpftes Konto verwalten können.

  7. Berechtigung zum Ändern des Nutzerkontos. Schlage Nutzern eine Methode vor, mit der sie ihr Konto bzw. ihre Konten wechseln können. Das ist besonders hilfreich, wenn Nutzer mehrere Konten haben.

    • Wenn ein Nutzer den Einwilligungsbildschirm schließen muss, um das Konto zu wechseln, senden Sie einen wiederherstellbaren Fehler an Google, damit sich der Nutzer mit der OAuth-Verknüpfung und dem impliziten Ablauf im gewünschten Konto anmelden kann.
  8. Fügen Sie Ihr Logo hinzu. Zeigen Sie Ihr Firmenlogo auf dem Einwilligungsbildschirm an. Verwenden Sie die Stilrichtlinien, um Ihr Logo zu platzieren. Wenn Sie auch das Google-Logo anzeigen lassen möchten, lesen Sie den Hilfeartikel Logos und Marken.

Projekt erstellen

So erstellen Sie ein Projekt, für das die Kontoverknüpfung verwendet werden soll:

  1. Go to the Google API Console.
  2. Klicken Sie auf Projekt erstellen .
  3. Geben Sie einen Namen ein oder akzeptieren Sie den generierten Vorschlag.
  4. Bestätigen oder bearbeiten Sie alle verbleibenden Felder.
  5. Klicken Sie auf Erstellen .

So zeigen Sie Ihre Projekt-ID an:

  1. Go to the Google API Console.
  2. Finden Sie Ihr Projekt in der Tabelle auf der Zielseite. Die Projekt - ID wird in der ID - Spalte.

Der Vorgang zur Google-Kontoverknüpfung umfasst einen Einwilligungsbildschirm, auf dem Nutzer die Anwendung sehen, die Zugriff auf ihre Daten anfordert, welche Art von Daten angefordert werden und welche Nutzungsbedingungen gelten. Sie müssen den OAuth-Zustimmungsbildschirm konfigurieren, bevor Sie eine Google API-Client-ID generieren können.

  1. Öffnen Sie in der Google APIs Console die Seite OAuth-Zustimmungsbildschirm.
  2. Wählen Sie bei Aufforderung das Projekt aus, das Sie gerade erstellt haben.
  3. Füllen Sie auf der Seite "OAuth-Zustimmungsbildschirm" das Formular aus und klicken Sie auf die Schaltfläche "Speichern".

    Name der Anwendung:Der Name der Anwendung, für die die Einwilligung eingeholt werden soll. Der Name sollte Ihre Anwendung korrekt widerspiegeln und mit dem Namen der Anwendung übereinstimmen, der Nutzern an anderer Stelle angezeigt wird. Der Name der Anwendung wird auf dem Einwilligungsbildschirm für die Kontoverknüpfung angezeigt.

    App-Logo:Ein Bild auf dem Zustimmungsbildschirm, anhand dessen Nutzer Ihre App erkennen können. Das Logo ist auf dem Zustimmungsbildschirm für die Kontoverknüpfung und in den Kontoeinstellungen zu sehen.

    Support-E-Mail-Adresse:E-Mail-Adresse des Supports, mit der Nutzer Sie mit Fragen zu ihrer Einwilligung kontaktieren können.

    Bereiche für Google APIs:Bereiche ermöglichen es Ihrer Anwendung, auf die privaten Google-Daten Ihrer Nutzer zuzugreifen. Für den Anwendungsfall der Google-Kontoverknüpfung reicht der Standardumfang (E-Mail, Profil, OpenID) aus. Sie müssen keine sensiblen Bereiche hinzufügen. Es wird empfohlen, Zugriffsbereiche schrittweise anzufordern, wenn der Zugriff erforderlich ist, und nicht im Voraus. Weitere Informationen

    Autorisierte Domains:Um Sie und Ihre Nutzer zu schützen, erlaubt Google die Nutzung autorisierter Domains nur solchen Anwendungen, die OAuth verwenden. Die Links Ihrer Apps müssen auf autorisierten Domains gehostet werden. Weitere Informationen

    Link zur Startseite der Anwendung:Startseite Ihrer Anwendung. Muss auf einer autorisierten Domain gehostet werden.

    Link zur Datenschutzerklärung der Anwendung:Wird auf dem Bildschirm für die Einwilligung in die Google-Kontoverknüpfung angezeigt. Muss auf einer autorisierten Domain gehostet werden.

    Link zu den Nutzungsbedingungen der Anwendung (optional): Muss auf einer autorisierten Domain gehostet werden.

    Abbildung 1. Zustimmungsbildschirm für die Google-Kontoverknüpfung für eine fiktive Anwendung, Tunery

  4. Prüfen Sie den Bestätigungsstatus. Falls Ihr Antrag überprüft werden muss, klicken Sie auf die Schaltfläche „Zur Überprüfung einreichen“, um Ihren Antrag zur Überprüfung einzureichen. Weitere Informationen finden Sie unter Anforderungen an die OAuth-Überprüfung.

OAuth-Server implementieren

Eine OAuth-2.0-Serverimplementierung des Autorisierungscode-Vorgangs besteht aus zwei Endpunkte, die Ihr Dienst über HTTPS zur Verfügung stellt. Der erste Endpunkt ist der Autorisierungsendpunkt, der für die Suche oder den Erhalt Einwilligung der Nutzer für den Datenzugriff erteilen. Der Autorisierungsendpunkt zeigt eine Anmelde-UI für noch nicht angemeldete Nutzer angezeigt, für die den angeforderten Zugriff gewährt. Der zweite Endpunkt ist der Tokenaustausch-Endpunkt, wird verwendet, um verschlüsselte Strings, sogenannte Tokens, zu erhalten, die einen Nutzer dazu autorisieren, auf Ihren Dienst zugreifen.

Wenn eine Google-Anwendung eine der APIs Ihres Dienstes aufrufen muss, verwendet Google diese Endpunkte miteinander verbinden, um von Ihren Nutzern die Berechtigung zum Aufrufen dieser APIs zu erhalten. im Namen der Person.

Eine von Google initiierte Sitzung mit OAuth 2.0-Autorisierungscode enthält den folgenden Ablauf:

  1. Google öffnet Ihren Autorisierungsendpunkt im Browser des Nutzers. Wenn der Fluss die für eine Aktion auf einem Nur-Sprach-Gerät gestartet werden, bis hin zu einem Smartphone.
  2. Der Nutzer meldet sich an, falls er noch nicht angemeldet ist, und erteilt Google die Berechtigung, mit Ihrer API auf ihre Daten zugreifen, falls sie nicht bereits eine Berechtigung erteilt haben.
  3. Ihr Dienst erstellt einen Autorisierungscode und gibt ihn an Google zurück. Aufgabe Den Browser des Nutzers mit dem Autorisierungscode an Google weiterleiten an die Anfrage angehängt.
  4. Google sendet den Autorisierungscode an Ihren Endpunkt für den Tokenaustausch, der überprüft die Authentizität des Codes und gibt ein Zugriffstoken sowie ein Aktualisierungstoken. Das Zugriffstoken ist ein kurzlebiges Token, das von Ihrem Dienst als Anmeldedaten für den Zugriff auf APIs akzeptiert. Das Aktualisierungstoken ist ein langlebiges Token, das Google speichern und verwenden kann, um neue Zugriffstokens zu erhalten, wenn sie verfallen lassen.
  5. Nachdem der Nutzer die Kontoverknüpfung abgeschlossen hat, werden alle nachfolgenden -Anforderung von Google enthält ein Zugriffstoken.

Autorisierungsanfragen verarbeiten

Wenn Sie die Kontoverknüpfung mit dem OAuth 2.0-Autorisierungscode vornehmen müssen sendet Google den Nutzer mit einer Anfrage an Ihren Autorisierungsendpunkt, enthält die folgenden Parameter:

Parameter des Autorisierungsendpunkts
client_id Die Client-ID, die Sie Google zugewiesen haben.
redirect_uri Die URL, an die Sie die Antwort auf diese Anfrage senden.
state Buchhaltungswert, der unverändert an Google zurückgegeben wird Weiterleitungs-URI.
scope Optional: Ein durch Leerzeichen getrennter Satz von Bereichsstrings, die die Daten, für die Google eine Autorisierung anfordert.
response_type Der Werttyp, der in der Antwort zurückgegeben werden soll. Für OAuth 2.0 Vorgang mit Autorisierungscode ausführen, lautet der Antworttyp immer code.
user_locale Die Spracheinstellung des Google-Kontos in RFC5646 -Format, mit dem Ihre Inhalte in die bevorzugte Sprache des Nutzers lokalisiert werden.

Wenn Ihr Autorisierungsendpunkt z. B. unter https://myservice.example.com/auth, kann eine Anfrage so aussehen:

GET https://myservice.example.com/auth?client_id=GOOGLE_CLIENT_ID&redirect_uri=REDIRECT_URI&state=STATE_STRING&scope=REQUESTED_SCOPES&response_type=code&user_locale=LOCALE

Damit der Autorisierungsendpunkt Anmeldeanfragen verarbeiten kann, musst du Folgendes tun: Schritte:

  1. Prüfen Sie, ob die client_id mit der Client-ID übereinstimmt, die Sie Google zugewiesen haben, und dass die redirect_uri mit der Weiterleitungs-URL übereinstimmt, die Google für Ihren Dienst bereitgestellt hat. Diese Prüfungen sind wichtig, um zu verhindern, unbeabsichtigte oder falsch konfigurierte Client-Apps verwenden. Wenn Sie mehrere OAuth 2.0-Abläufe. Prüfe außerdem, ob response_type auf code gesetzt ist.
  2. Prüfen Sie, ob der Nutzer in Ihrem Dienst angemeldet ist. Ist der Nutzer nicht angemeldet, den Anmelde- oder Anmeldevorgang Ihres Service abzuschließen.
  3. Generieren Sie einen Autorisierungscode, mit dem Google auf Ihre API zugreifen kann. Der Autorisierungscode kann ein beliebiger Stringwert sein, muss aber eindeutig sein stellen den Nutzer, den Client, für den das Token gilt, und den Ablauf des Codes dar. Zeit und darf nicht erraten werden. In der Regel erteilen Sie eine Autorisierung Codes, die nach etwa 10 Minuten ablaufen.
  4. Die durch den Parameter redirect_uri angegebene URL muss die folgendes Formular:
      https://oauth-redirect.googleusercontent.com/r/YOUR_PROJECT_ID
      https://oauth-redirect-sandbox.googleusercontent.com/r/YOUR_PROJECT_ID
      
  5. Leiten Sie den Browser des Nutzers an die URL weiter, die im redirect_uri-Parameter. Geben Sie den Autorisierungscode an, und den ursprünglichen, unveränderten Statuswert beim Weiterleiten indem Sie die Parameter code und state anhängen. Im Folgenden finden Sie Beispiel für die resultierende URL:
    https://oauth-redirect.googleusercontent.com/r/YOUR_PROJECT_ID?code=AUTHORIZATION_CODE&state=STATE_STRING

Anfragen zum Tokenaustausch verarbeiten

Der Tokenaustausch-Endpunkt Ihres Dienstes ist für zwei Arten von Tokens verantwortlich Plattformen:

  • Autorisierungscodes gegen Zugriffstokens und Aktualisierungstokens austauschen
  • Aktualisierungstokens gegen Zugriffstokens austauschen

Anfragen für den Tokenaustausch umfassen die folgenden Parameter:

Parameter für den Tokenaustausch-Endpunkt
client_id Ein String, der den Ursprung der Anfrage als Google identifiziert. Dieser String muss in Ihrem System als eindeutige Kennung von Google registriert sein.
client_secret Ein geheimer String, den Sie bei Google für Ihren Dienst registriert haben.
grant_type Der Tokentyp, der ausgetauscht wird. Entweder authorization_code oder refresh_token.
code Wenn grant_type=authorization_code festgelegt ist, ist dieser Parameter der Code, den Google von Ihrem Anmelde- oder Tokenaustausch erhalten hat Endpunkt.
redirect_uri Wenn grant_type=authorization_code festgelegt ist, ist dieser Parameter der In der ursprünglichen Autorisierungsanfrage verwendete URL.
refresh_token Wenn grant_type=refresh_token festgelegt ist, ist dieser Parameter der Aktualisierungstoken, das Google von Ihrem Tokenaustausch-Endpunkt erhalten hat.
Autorisierungscodes gegen Zugriffstokens und Aktualisierungstokens austauschen

Nachdem sich der Nutzer angemeldet hat und Ihr Autorisierungsendpunkt eine kurzlebige Autorisierungscode an Google sendet, sendet Google eine Anfrage an Ihren Tokenaustausch. Endpunkt, um den Autorisierungscode gegen ein Zugriffstoken auszutauschen und eine Aktualisierung durchzuführen Token.

Bei diesen Anfragen ist der Wert von grant_type authorization_code und der Wert Der Wert von code ist der Wert des Autorisierungscodes, den Sie zuvor gewährt haben an Google senden. Hier sehen Sie ein Beispiel für eine Anfrage zum Austausch eines Autorisierungscode für ein Zugriffstoken und ein Aktualisierungstoken:

POST /token HTTP/1.1
Host: oauth2.example.com
Content-Type: application/x-www-form-urlencoded

client_id=GOOGLE_CLIENT_ID&client_secret=GOOGLE_CLIENT_SECRET&grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=REDIRECT_URI

Um Autorisierungscodes gegen ein Zugriffstoken und ein Aktualisierungstoken auszutauschen, Der Tokenaustauschendpunkt antwortet auf POST-Anfragen mit folgendem Befehl: Schritte:

  1. Prüfen Sie, ob client_id den Ursprung der Anfrage als autorisiert identifiziert Ursprung und der client_secret mit dem erwarteten Wert übereinstimmt.
  2. Prüfen Sie, ob der Autorisierungscode gültig und nicht abgelaufen ist und dass der Die in der Anfrage angegebene Client-ID stimmt mit der Client-ID überein, die der Autorisierungscode.
  3. Prüfen, ob die durch den Parameter redirect_uri angegebene URL identisch ist auf den Wert, der in der ursprünglichen Autorisierungsanfrage verwendet wurde.
  4. Wenn Sie nicht alle oben genannten Kriterien überprüfen können, wird ein HTTP- Fehler „400 Bad Request“ mit {"error": "invalid_grant"} als Textkörper
  5. Andernfalls verwenden Sie die Nutzer-ID aus dem Autorisierungscode, um eine Aktualisierung zu generieren Token und ein Zugriffstoken. Diese Tokens können beliebiger Stringwert sein, muss den Nutzer und den Client, für den das Token bestimmt ist, eindeutig repräsentieren. dürfen nicht erraten werden. Notieren Sie sich für Zugriffstokens Das Token. Dies geschieht normalerweise eine Stunde nach der Ausgabe des Tokens. Aktualisierungstokens laufen nicht ab.
  6. Geben Sie im Text der HTTPS-Antwort das folgende JSON-Objekt zurück:
    {
    "token_type": "Bearer",
    "access_token": "ACCESS_TOKEN",
    "refresh_token": "REFRESH_TOKEN",
    "expires_in": SECONDS_TO_EXPIRATION
    }

Google speichert das Zugriffstoken und das Aktualisierungstoken für den Nutzer und die Einträge Ablauf des Zugriffstokens. Wenn das Zugriffstoken abläuft, verwendet Google Das Aktualisierungstoken, um ein neues Zugriffstoken von Ihrem Tokenaustausch-Endpunkt abzurufen.

Aktualisierungstokens gegen Zugriffstokens austauschen

Wenn ein Zugriffstoken abläuft, sendet Google eine Anfrage an Ihren Tokenaustausch um ein Aktualisierungstoken gegen ein neues Zugriffstoken auszutauschen.

Bei diesen Anfragen ist der Wert von grant_type refresh_token und der Wert von refresh_token ist der Wert des Aktualisierungstokens, das Sie zuvor gewährt haben Google. Das folgende Beispiel zeigt eine Anfrage zum Austausch eines Aktualisierungstokens: für ein Zugriffstoken:

POST /token HTTP/1.1
Host: oauth2.example.com
Content-Type: application/x-www-form-urlencoded

client_id=GOOGLE_CLIENT_ID&client_secret=GOOGLE_CLIENT_SECRET&grant_type=refresh_token&refresh_token=REFRESH_TOKEN

Ihr Endpunkt für den Tokenaustausch, um ein Aktualisierungstoken gegen ein Zugriffstoken auszutauschen antwortet auf POST-Anfragen mit den folgenden Schritten:

  1. Prüfen Sie, ob client_id den Ursprung der Anfrage als Google identifiziert. dass client_secret mit dem erwarteten Wert übereinstimmt.
  2. Prüfen Sie, ob das Aktualisierungstoken gültig ist und ob die Client-ID, die im Die Anfrage stimmt mit der Client-ID überein, die mit dem Aktualisierungstoken verknüpft ist.
  3. Wenn Sie nicht alle oben genannten Kriterien überprüfen können, geben Sie einen HTTP 400-Fehler zurück Fehler bei der Anfrage mit {"error": "invalid_grant"} als Textkörper.
  4. Andernfalls verwenden Sie die Nutzer-ID aus dem Aktualisierungstoken, um einen Zugriff zu generieren. Token. Diese Token können ein beliebiger Stringwert sein, müssen aber eindeutig sein den Nutzer und den Client repräsentieren, für den das Token bestimmt ist, und erraten lassen. Notieren Sie sich bei Zugriffstokens auch die Ablaufzeit des Tokens. normalerweise eine Stunde nach der Ausstellung des Tokens.
  5. Geben Sie das folgende JSON-Objekt im Text des HTTPS-Objekts zurück: Antwort:
    {
    "token_type": "Inhaber",
    "access_token": "ACCESS_TOKEN",
    
    „expires_in“: SECONDS_TO_EXPIRATION
    }
userinfo-Anfragen verarbeiten

Der userinfo-Endpunkt ist eine geschützte OAuth 2.0-Ressource, die Ansprüche über den verknüpften Nutzer zurückgibt. Die Implementierung und das Hosten des userinfo-Endpunkts sind mit Ausnahme der folgenden Anwendungsfälle optional:

Nachdem das Zugriffstoken erfolgreich von Ihrem Tokenendpunkt abgerufen wurde, sendet Google eine Anfrage an Ihren userinfo-Endpunkt, um grundlegende Profilinformationen über den verknüpften Nutzer abzurufen.

Anfrageheader für userinfo-Endpunkt
Authorization header Das Zugriffstoken vom Typ „Bearer“.

Wenn Ihr userinfo-Endpunkt beispielsweise unter https://myservice.example.com/userinfo, kann eine Anfrage so aussehen:

GET /userinfo HTTP/1.1
Host: myservice.example.com
Authorization: Bearer ACCESS_TOKEN

Führen Sie die folgenden Schritte aus, damit der userinfo-Endpunkt Anfragen verarbeiten kann:

  1. Extrahieren Sie das Zugriffstoken aus dem Autorisierungs-Header und geben Sie Informationen für den Nutzer zurück, der mit dem Zugriffstoken verknüpft ist.
  2. Wenn das Zugriffstoken ungültig ist, gib den Fehler „HTTP 401 Unauthorized“ mit dem Antwortheader WWW-Authenticate zurück. Hier ist ein Beispiel für eine Userinfo-Fehlerantwort:
    HTTP/1.1 401 Unauthorized
    WWW-Authenticate: error="invalid_token",
    error_description="The Access Token expired"
    
    Wenn während des Verknüpfungsvorgangs der Fehler „401 Nicht autorisiert“ oder eine andere fehlgeschlagene Fehlermeldung zurückgegeben wird, kann der Fehler nicht behoben werden. Das abgerufene Token wird verworfen und der Nutzer muss den Verknüpfungsvorgang noch einmal starten.
  3. Wenn das Zugriffstoken gültig ist, geben Sie eine HTTP 200-Antwort mit dem folgenden JSON-Objekt im Text des HTTPS-Objekts zurück. Antwort:

    {
    "sub": "USER_UUID",
    "email": "EMAIL_ADDRESS",
    "given_name": "FIRST_NAME",
    "family_name": "LAST_NAME",
    "name": "FULL_NAME",
    "picture": "PROFILE_PICTURE",
    }
    
    Wenn der userinfo-Endpunkt eine HTTP 200-Erfolgsantwort zurückgibt, werden das abgerufene Token und die Anforderungen im Google-Konto des Nutzers registriert.

    Userinfo-Endpunktantwort
    sub Eine eindeutige ID, die den Nutzer in Ihrem System identifiziert.
    email E-Mail-Adresse des Nutzers
    given_name Optional:Vorname des Nutzers.
    family_name Optional:Nachname des Nutzers.
    name Optional:Vollständiger Name des Nutzers.
    picture Optional:Profilbild des Nutzers.

Implementierung validieren

Sie können Ihre Implementierung mit dem Tool OAuth 2.0 Playground validieren.

Führen Sie im Tool die folgenden Schritte aus:

  1. Klicken Sie auf Konfiguration , um das Fenster für die OAuth 2.0-Konfiguration zu öffnen.
  2. Wählen Sie im Feld OAuth-Ablauf die Option Clientseitig aus.
  3. Wählen Sie im Feld OAuth-Endpunkte die Option Benutzerdefiniert aus.
  4. Geben Sie in den entsprechenden Feldern Ihren OAuth 2.0-Endpunkt und die Client-ID an, die Sie Google zugewiesen haben.
  5. Wählen Sie im Abschnitt Schritt 1 keine Google-Bereiche aus. Lassen Sie dieses Feld stattdessen leer oder geben Sie einen für Ihren Server gültigen Bereich ein (oder einen beliebigen String, wenn Sie keine OAuth-Bereiche verwenden). Wenn Sie fertig sind, klicken Sie auf APIs autorisieren.
  6. Führen Sie in den Abschnitten Schritt 2 und Schritt 3 den OAuth 2.0-Ablauf durch und prüfen Sie, ob jeder Schritt wie vorgesehen funktioniert.

Sie können Ihre Implementierung mit der Demo zur Google-Kontoverknüpfung prüfen.

Führen Sie im Tool die folgenden Schritte aus:

  1. Klicken Sie auf die Schaltfläche Über Google anmelden.
  2. Wählen Sie das Konto aus, das Sie verknüpfen möchten.
  3. Geben Sie die Service-ID ein.
  4. Optional können Sie einen oder mehrere Bereiche angeben, für die Sie Zugriff anfordern möchten.
  5. Klicken Sie auf Demo starten.
  6. Bestätigen Sie bei Aufforderung, dass Sie der Verknüpfungsanfrage zustimmen oder sie ablehnen können.
  7. Prüfen Sie, ob Sie zu Ihrer Plattform weitergeleitet werden.