Durch die Nutzung von AWS re:Post stimmt du den AWS re:Post Nutzungsbedingungen

Wie richte ich Google als Verbundidentitätsanbieter in einem Amazon Cognito-Benutzerpool ein?

Lesedauer: 6 Minute
0

Ich möchte Google als Verbundidentitätsanbieter (IdP) in einem Amazon Cognito-Benutzerpool verwenden.

Behebung

Erstellen eines Amazon-Cognito-Benutzerpools mit einem App-Client und Domain-Namen

Führen Sie die folgenden Schritte aus:

  1. Erstellen Sie einen neuen Benutzerpool.
    Hinweis: Beim Erstellen eines Benutzerpools wird standardmäßig das Standardattribut E-Mail ausgewählt.
  2. Erstellen Sie einen App-Client in Ihrem Benutzerpool.
  3. Fügen Sie einen Domain-Namen für Ihren Benutzerpool hinzu.

Erstellen eines Google API Console-Projekts

Führen Sie die folgenden Schritte aus:

  1. Melden Sie sich mit Ihrem Google-Konto bei Google API Console an. Weitere Informationen finden Sie unter APIs in API Console verwalten auf der Google-Hilfe-Website.
  2. Wählen Sie im Dashboard (APIs & Services) ERSTELLEN aus.
  3. Geben Sie unter Neues Projekt einen Projektnamen ein.
  4. Wählen Sie für Ort die Option BROWSEN aus, und wählen Sie dann einen Speicherort aus.
  5. Wählen Sie ERSTELLEN aus.

Weitere Informationen finden Sie unter Mit Google für Web anmelden auf der Google Identity-Website.

Konfigurieren des OAuth-Zustimmungsbildschirms

Führen Sie die folgenden Schritte aus:

  1. Öffnen Sie die Google API Console und wählen Sie dann im linken Navigationsbereich OAuth-Zustimmungsbildschirm aus.
  2. Füllen Sie die folgenden Pflichtfelder auf dem Einwilligungsformular aus:
    Geben Sie für Anwendungsname einen Namen ein.
    Geben Sie für Authorisierte Domains amazoncognito.com ein.
    Wichtig: Sie müssen diese Domain eingeben, damit Sie Ihre Amazon-Cognito-Domain verwenden können, wenn Sie eine OAuth-Client-ID erstellen.
  3. Wählen Sie Speichern.

Weitere Informationen finden Sie unter OAuth-Zustimmungsbildschirm abschließen auf der Google Workspace-Website.

Abrufen der Anmeldeinformationen für den OAuth 2.0-Client

Führen Sie die folgenden Schritte aus:

  1. Öffnen Sie die Google API Console und wählen Sie dann auf der Seite Anmeldeinformationen die Option Anmeldeinformationen erstellen aus.
  2. Wählen Sie OAuth-Client-ID.
  3. Wählen Sie auf der Seite OAuth-Client-ID erstellen für Anwendungsart die Option Web-Anwendung aus.
  4. Geben Sie folgende Informationen ein:
    Geben Sie für Name einen Namen für Ihre OAuth-Client-ID ein.
    Geben Sie für Autorisierte JavaScript-Ursprünge Ihre Amazon-Cognito-Domain ein, zum Beispiel: https://yourDomainPrefix.auth.region.amazoncognito.com.
    Hinweis: Ersetzen Sie yourDomainPrefix und region durch die Werte für Ihren Benutzerpool. Um diese Werte zu finden, öffnen Sie die Amazon-Cognito-Konsole und navigieren Sie zur Seite Domainname für Ihren Benutzerpool.
    Geben Sie für Authorized redirect URIs https://yourDomainPrefix.auth.region.amazoncognito.com/oauth2/idpresponse ein.
    Hinweis: Ersetzen Sie yourDomainPrefix und region durch die Werte für Ihren Benutzerpool.
  5. Notieren Sie sich im Dialogfeld OAuth Client die Client-ID und den Client-Schlüssel, die in einem späteren Schritt verwendet werden sollen.

Weitere Informationen finden Sie unter Verwenden von OAuth 2.0 für den Zugriff auf Google APIs auf der Google Identity-Website.

Konfigurieren von Google als Verbund-IdP in Ihrem Benutzerpool

Führen Sie die folgenden Schritte aus:

  1. Öffnen Sie die Amazon-Cognito-Konsole und wählen Sie dann Benutzerpools aus.
  2. Wählen Sie Ihren Benutzerpool aus.
  3. Wählen Sie die Registerkarte Anmeldeerlebnis aus.
  4. Wählen Sie unter Anmeldung als Verbundidentitätsanbieter die Option Identitätsanbieter hinzufügen.
  5. Wählen Sie Google aus.
  6. Geben Sie unter Google-Verbund mit diesem Nutzerpool einrichten die folgenden Informationen ein:
    Geben Sie unter Client-ID die Client-ID ein, die Sie notiert haben.
    Geben Sie für Client-Geheimnis das Client-Geheimnis ein, das Sie notiert haben.
    Geben Sie für Autorisierte Bereiche die OpenID der Profil-E-Mail ein.
  7. Ordnen Sie unter Attribute zwischen Google und Ihrem Nutzerpool zuordnen das Nutzerpool-Attribut E-Mail dem Google-Attribut E-Mail zu.
  8. Wählen Sie Ein weiteres Attribut hinzufügen und ordnen Sie das Benutzerpool-Attribut Benutzername dem Google-Attribut Benutzername zu.
  9. Wählen Sie Identitätsanbieter hinzufügen aus.

Ändern der App-Client-Einstellungen für Ihren Benutzerpool

Hinweis: In den App-Client-Einstellungen müssen die zugewiesenen Benutzerpool-Attribute beschreibbar sein. Weitere Informationen finden Sie unter Angeben von Identitätsanbieter-Attributzuordnungen für Ihren Benutzerpool.

Führen Sie die folgenden Schritte aus:

  1. Öffnen Sie die Amazon-Cognito-Konsole und wählen Sie dann Ihren Benutzerpool aus.
  2. Wählen Sie die Registerkarte App-Integration.
  3. Wählen Sie unter App-Client-Liste die Option App-Client erstellen aus.
  4. Geben Sie folgende Informationen ein:
    Wählen Sie als App-Typ die Option Öffentlicher Client aus und geben Sie dann einen Namen für Ihren App-Client ein.
    Wählen Sie für Authentifizierungsabläufe ALLOW_USER_PASSWORD_AUTH und ALLOW_REFRESH_TOKEN_AUTH aus.
    Geben Sie für Zugelassen Callback-URL(s) die URL ein, zu der Ihre Benutzer nach der Anmeldung weitergeleitet werden sollen. Geben Sie zum Testen eine gültige URL ein, z. B. https://www.example.com/.
    Geben Sie unter Abmelde-URL(s) die URL ein, zu der Ihre Benutzer nach dem Abmelden weitergeleitet werden sollen. Geben Sie zum Testen eine gültige URL ein, z. B. https://www.example.com/.
    Wählen Sie für Identitätsanbieter die Optionen Cognito-Benutzerpool und Google aus.
    Wählen Sie für den OAuth 2.0-Gewährungstyp die Option Implizite Gewährung aus.
    Wählen Sie für OpenID-Connect-Bereiche die Optionen E-Mail, openid und Profil aus.
    Wichtig: Der implizite OAuth-Gewährungsablauf dient nur zu Testzwecken. Es hat sich bewährt, die Autorisierungscode-Gewährungtyp für Produktionssysteme zu verwenden.
  5. Wählen Sie App-Client erstellen aus.

Weitere Informationen finden Sie unter Nutzungsbedingungen für App-Clients.

Erstellen der Endpunkt-URL

Verwenden Sie die Werte aus Ihrem Benutzerpool, um die URL des Anmeldeendpunkts für das von Amazon Cognito gehostete Web-UI zu erstellen.

Beispiel-URL: https://yourDomainPrefix.auth.region.amazoncognito.com/login?response_type=token&client_id=yourClientId&redirect_uri=redirectUrl

Hinweis: Ersetzen Sie yourDomainPrefix und region durch die Werte für Ihren Benutzerpool. Um diese Werte zu finden, öffnen Sie die Amazon-Cognito-Konsole und navigieren Sie zur Seite Domainnamen für Ihren Benutzerpool. Ersetzen Sie yourClientId durch die ID Ihres Amazon Cognito-App-Clients und redirectUrl durch die Callback-URL Ihres App-Clients. Diese Werte finden Sie auf der Seite App-Client-Einstellungen für Ihren Benutzerpool.

Weitere Informationen finden Sie unter Wie konfiguriere ich die gehostete Web-Benutzeroberfläche für Amazon Cognito? und Anmeldeendpunkt.

Testen der Endpunkt-URL

Führen Sie die folgenden Schritte aus:

  1. Geben Sie die URL des Anmeldeendpunkts in Ihrem Webbrowser ein.
  2. Wählen Sie auf der Webseite Ihres Anmeldeendpunkts Weiter mit Google aus.
    Hinweis: Wenn Sie zur Callback-URL Ihres Amazon-Cognito-App-Clients weitergeleitet werden, sind Sie in Ihrem Browser bereits bei Ihrem Google-Konto angemeldet. Die Benutzerpool-Token werden in der URL in der Adressleiste Ihres Webbrowsers angezeigt.
  3. Wählen Sie unter Mit Google anmelden Ihr Google-Konto aus und melden Sie sich an.

Nach der Authentifizierung werden Sie zur Callback-URL Ihres Amazon Cognito-App-Clients weitergeleitet. Die vom Benutzerpool ausgegebenen JSON-Web-Tokens (JWT) werden in der URL in der Adressleiste Ihres Webbrowsers angezeigt.

Hinweis: Ein JavaScript-SDK generiert die URL des Anmeldeendpunkts. Dieses SDK analysiert auch die JWT-Token in der URL.

Ähnliche Informationen

Verwendung von Anbietern sozialer Identitäten mit einem Benutzerpool

Hinzufügen einer Benutzerpool-Anmeldung über einen Drittanbieter