Fügen Sie Ihrem Benutzerpool die Anmeldung über soziale Netzwerke hinzu - Amazon Cognito

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Fügen Sie Ihrem Benutzerpool die Anmeldung über soziale Netzwerke hinzu

Wenn Sie Benutzern die Möglichkeit geben, sich über ihre bestehenden öffentlichen oder sozialen Identitätsanbieter bei Ihrer Anwendung anzumelden, können Sie ihre Authentifizierungserfahrung verbessern. Amazon Cognito Cognito-Benutzerpools lassen sich in beliebte Anbieter für soziale Identitäten (IdPs) wie Facebook, Google, Amazon und Apple integrieren und bieten Ihren Benutzern bequeme Anmeldeoptionen, mit denen sie bereits vertraut sind.

Wenn Sie die Anmeldung über soziale Netzwerke einrichten, bieten Sie Ihren Benutzern eine Alternative zur Erstellung eines speziellen Kontos nur für Ihre Anwendung. Dies kann die Konversionsraten verbessern und den Anmeldevorgang reibungsloser gestalten. Aus Sicht des Benutzers können sie ihre vorhandenen sozialen Anmeldeinformationen verwenden, um sich schnell zu authentifizieren, ohne sich mühsam einen anderen Benutzernamen und ein anderes Passwort merken zu müssen.

Die Konfiguration eines sozialen IdP in Ihrem Benutzerpool umfasst einige wichtige Schritte. Sie müssen Ihre Anwendung beim sozialen Anbieter registrieren, um eine Client-ID und ein geheimes Passwort zu erhalten. Anschließend können Sie Ihrem Benutzerpool die Konfiguration für soziale IdP hinzufügen und dabei die Bereiche angeben, die Sie anfordern möchten, und die Benutzerpool-Attribute, die Sie anhand von IdP-Attributen zuordnen möchten. Zur Laufzeit wickelt Amazon Cognito den Token-Austausch mit dem Anbieter ab, ordnet Benutzerattribute zu und gibt Tokens für Ihre Anwendung im Format des gemeinsamen Benutzerpools aus.

Registrieren mit einem Social-Identity-Anbieter

Bevor Sie einen soziale IdP mit Amazon Cognito anlegen, müssen Sie Ihre Anwendung bei dem sozialen IdP registrieren, um eine Kunden-ID und einen geheimen Client-Schlüssel zu erhalten.

  1. Erstellen Sie ein Entwickler-Konto bei Facebook.

  2. Melden Sie sich mit Ihren Facebook-Anmeldeinformationen an.

  3. Wählen Sie im Menü My Apps (Meine Apps) den Eintrag Create New App (Neue App erstellen).

    Wenn Sie noch keine Facebook-App haben, wird Ihnen eine andere Option angezeigt. Wählen Sie Create app (App erstellen).

  4. Wählen Sie auf der Seite zum Erstellen einer App einen Anwendungsfall für Ihre App aus und klicken Sie dann auf Next (Weiter).

  5. Geben Sie einen Namen für Ihre Facebook-App ein und wählen Sie dann Create App (App erstellen) aus.

  6. Wählen Sie in der linken Navigationsleiste App Settings (App-Einstellungen) und klicken Sie dann auf Basic (Grundlegend).

  7. Notieren Sie die App ID und das App Secret (Geheimer Schlüssel für die App). Sie brauchen diese Informationen im nächsten Abschnitt.

  8. Wählen Sie unten auf der Seite + Add Platform (+ Plattform hinzufügen).

  9. Wählen Sie auf dem Bildschirm „Plattform auswählen“ Ihre Plattformen aus und klicken Sie dann auf Weiter.

  10. Wählen Sie Änderungen speichern.

  11. Geben Sie für App Domains (App-Domänen) Ihre Benutzerpool-Domäne ein.

    https://your_user_pool_domain
  12. Wählen Sie Änderungen speichern.

  13. Wählen Sie in der Navigationsleiste Produkte und dann Über Facebook-Anmeldung konfigurieren aus.

  14. Wählen Sie im Menü Facebook Login (Facebook-Anmeldung) unter Configure (Konfigurieren) die Option Settings (Einstellungen) aus.

    Gib deine Weiterleitung URL in das Feld Gültige OAuth Weiterleitung einURIs. Die Weiterleitung URL besteht aus Ihrer Benutzerpool-Domain mit dem /oauth2/idpresponse Endpunkt.

    https://your_user_pool_domain/oauth2/idpresponse
  15. Wählen Sie Änderungen speichern.

  1. Erstellen Sie ein Entwickler-Konto bei Amazon.

  2. Melden Sie sich mit Ihren Amazon-Anmeldeinformationen an.

  3. Sie müssen ein Amazon Sicherheitsprofil erstellen, um die Amazon-Client-ID und den geheimen Client-Schlüssel zu erhalten.

    Wählen Sie in der Navigationsleiste oben auf der Seite Apps und Dienste aus und wählen Sie dann Login with Amazon aus.

  4. Wählen Sie Create a Security Profile (Ein Sicherheitsprofil erstellen) aus.

  5. Geben Sie einen Namen für das Sicherheitsprofil, eine Beschreibung des Sicherheitsprofils und einen Datenschutzhinweis zur Einwilligung einURL.

  6. Wählen Sie Save (Speichern) aus.

  7. Wählen Sie Client ID (Client-ID) und Client Secret (Clientschlüssel), um die Client-ID und den Clientschlüssel anzuzeigen. Sie brauchen diese Informationen im nächsten Abschnitt.

  8. Bewegen Sie den Mauszeiger über das Zahnrad, wählen Sie Web Settings (Web-Einstellungen) und dann Edit (Bearbeiten) aus.

  9. Geben Sie Ihre Benutzerpool-Domäne in Allowed Origins (Autorisierte Quellen) ein.

    https://<your-user-pool-domain>
  10. Geben Sie Ihre Benutzerpool-Domain mit dem /oauth2/idpresponse Endpunkt in Allowed Return einURLs.

    https://<your-user-pool-domain>/oauth2/idpresponse
  11. Wählen Sie Save (Speichern) aus.

Weitere Informationen zu OAuth 2.0 auf der Google Cloud-Plattform finden Sie in der Dokumentation zu Google Workspace für Entwickler unter Weitere Informationen zur Authentifizierung und Autorisierung.

  1. Erstellen Sie ein Entwickler-Konto bei Google.

  2. Melden Sie sich bei der Konsole für Google Cloud Platform an.

  3. Klicken Sie in der oberen Navigationsleiste auf Select a project (Projekt auswählen). Wenn Sie bereits ein Projekt auf der Google-Plattform haben, zeigt dieses Menü stattdessen Ihr Standardprojekt an.

  4. Wählen Sie NEWPROJECT.

  5. Geben Sie einen Namen für Ihr Produkt ein und wählen Sie dann CREATE.

  6. Wählen Sie in der linken Navigationsleiste Services APIs und anschließend Oauth-Zustimmungsbildschirm aus.

  7. Geben Sie die App-Informationen, eine App-Domain, autorisierte Domains und Kontaktinformationen für Entwickler ein. Ihre autorisierten Domains müssen amazoncognito.com den Stamm Ihrer benutzerdefinierten Domain enthalten. Beispiel: example.com. Wählen Sie SAVEANDCONTINUE.

  8. 1. Wählen Sie unter Bereiche die Option Bereiche hinzufügen oder entfernen und wählen Sie dann mindestens die folgenden OAuth Bereiche aus.

    1. .../auth/userinfo.email

    2. .../auth/userinfo.profile

    3. openid

  9. Wählen Sie unter Test users (Testbenutzer) die Option Add users (Benutzer hinzufügen) aus. Geben Sie Ihre E-Mail-Adresse und alle anderen autorisierten Testbenutzer ein und wählen Sie dann. SAVEANDCONTINUE

  10. Erweitern Sie die linke Navigationsleiste erneut, wählen Sie Dienste APIs und dann Anmeldeinformationen aus.

  11. Wählen Sie CREATECREDENTIALSund wählen Sie dann OAuthClient-ID.

  12. Wählen Sie einen Application type (Anwendungstyp) aus und geben Sie Ihrem Client im Feld Name (Name) einen Namen.

  13. Wählen Sie unter Autorisierte JavaScript Herkunft die Option aus ADDURI. Geben Sie Ihre Benutzerpool-Domäne ein.

    https://<your-user-pool-domain>
  14. Wählen Sie unter Autorisierte Weiterleitung URIs die Option aus ADDURI. Geben Sie den Pfad zum Endpunkt /oauth2/idpresponse Ihrer Benutzerpool-Domäne ein.

    https://<your-user-pool-domain>/oauth2/idpresponse
  15. Wählen Sie CREATE.

  16. Bewahren Sie die Werte sicher auf, die Google unter Ihre Client-ID und Ihr Client-Schlüssel anzeigt. Stellen Sie diese Werte Amazon Cognito zur Verfügung, wenn Sie einen Google-IDP hinzufügen.

Weitere Informationen zur Einrichtung von „Mit Apple anmelden“ finden Sie unter Konfigurieren Ihrer Umgebung für „Mit Apple anmelden“ in der Apple-Dokumentation für Entwickler.

  1. Erstellen Sie ein Entwickler-Konto bei Apple.

  2. Melden Sie sich mit Ihren Apple-Anmeldeinformationen an.

  3. Wählen Sie in der linken Navigationsleiste Certificates, Identifiers & Profiles (Zertifikate, IDs und Profile) aus.

  4. Wählen Sie in der linken Navigationsleiste Kennungen aus.

  5. Wählen Sie auf der Seite Kennungen das Symbol + aus.

  6. Wählen Sie auf der Seite Neue Kennung registrieren die Option App IDs und dann Weiter aus.

  7. Wählen Sie auf der Seite Typ auswählen die Option App und dann Weiter aus.

  8. Machen Sie auf der Seite Registrieren einer App-ID das Folgende:

    1. Geben Sie unter Description (Beschreibung) eine Beschreibung ein.

    2. Geben Sie unter App ID Prefix (App-ID-Präfix) eine Bundle ID (Bündel-ID) ein. Notieren Sie sich den Wert unter App ID Prefix (App-ID-Präfix). Sie benötigen diesen Wert, nachdem Sie Apple als Identitätsanbieter in Schritt 2: Hinzufügen eines Social-Identity-Anbieters zu Ihrem Benutzerpool ausgewählt haben.

    3. Wählen Sie unter Funktionen die Option Mit Apple anmelden und dann Bearbeiten aus.

    4. Wählen Sie auf der Seite „Mit Apple anmelden: App-ID-Konfiguration“ aus, ob Sie die App entweder als primäre App oder als Gruppe mit einer anderen App einrichten möchtenIDs, und wählen Sie dann Speichern aus.

    5. Klicken Sie auf Continue.

  9. Wählen Sie auf der Seite App-ID bestätigen die Option Registrieren aus.

  10. Wählen Sie auf der Seite Kennungen das Symbol + aus.

  11. Wählen Sie auf der Seite „Neue Kennung registrieren“ die Option Dienste IDs und anschließend „Fortfahren“ aus.

  12. Machen Sie auf der Seite Registrieren einer Service-ID das Folgende:

    1. Geben Sie unter Description (Beschreibung) eine Beschreibung ein.

    2. Geben Sie unter Identifier (ID) eine ID ein. Notieren Sie sich diese Dienste-ID, da Sie diesen Wert benötigen, nachdem Sie Apple als Identitätsanbieter in ausgewählt habenSchritt 2: Hinzufügen eines Social-Identity-Anbieters zu Ihrem Benutzerpool.

    3. Wählen Sie Weiter und dann Registrieren aus.

  13. Wähle auf der Seite „Identifikatoren“ die Services-ID aus, die du gerade erstellt hast.

    1. Wählen Sie Mit Apple anmelden und dann Konfigurieren aus.

    2. Wählen Sie auf der Seite Web Authentication Configuration (Konfiguration der Web-Authentifizierung) die App-ID, die Sie zuvor erstellt haben, als Primary App ID (Primäre App-ID) aus.

    3. Wählen Sie das Pluszeichen neben Website URLs.

    4. Geben Sie unter Domains and subdomains (Domänen und Subdomänen) Ihre Benutzerpool-Domäne ohne das Präfix https:// ein.

      <your-user-pool-domain>
    5. Geben Sie URLs unter Zurück den Pfad zum /oauth2/idpresponse Endpunkt Ihrer Benutzerpool-Domain ein.

      https://<your-user-pool-domain>/oauth2/idpresponse
    6. Wählen Sie Weiter und dann Fertig aus. Sie müssen die Domäne nicht verifizieren.

    7. Wählen Sie Continue (Weiter) und anschließend Save (Speichern) aus.

  14. Wählen Sie in der linken Navigationsleiste die Option Schlüssel aus.

  15. Klicken Sie auf der Seite Schlüssel auf das Symbol +.

  16. Machen Sie auf der Seite Registrieren eines neuen Schlüssels das Folgende:

    1. Geben Sie unter Key Name (Schlüsselname) einen Schlüsselnamen ein.

    2. Wählen Sie Mit Apple anmelden und dann Konfigurieren aus.

    3. Wählen Sie auf der Seite „Schlüssel konfigurieren“ die App-ID, die Sie zuvor erstellt haben, als primäre App-ID aus. Wählen Sie Save (Speichern) aus.

    4. Wählen Sie Weiter und dann Registrieren aus.

  17. Wählen Sie auf der Seite „Ihren Schlüssel herunterladen“ die Option Herunterladen aus, um den privaten Schlüssel herunterzuladen, notieren Sie sich die angezeigte Schlüssel-ID und wählen Sie dann Fertig aus. Sie benötigen diesen privaten Schlüssel und den auf dieser Seite angezeigten Wert für die Schlüssel-ID, nachdem Sie Apple als Identitätsanbieter in Schritt 2: Hinzufügen eines Social-Identity-Anbieters zu Ihrem Benutzerpool ausgewählt haben.

Hinzufügen eines Social-Identity-Anbieters zu Ihrem Benutzerpool

In diesem Abschnitt konfigurieren Sie einen sozialen IdP unter Verwendung der Client-ID und des Client-Geheimnisses aus dem vorherigen Abschnitt im Benutzerpool.

Um einen Anbieter für soziale Identitäten für einen Benutzerpool zu konfigurieren, verwenden Sie AWS Management Console
  1. Melden Sie sich bei der Amazon-Cognito-Konsole an. Möglicherweise werden Sie zur Eingabe Ihrer AWS Anmeldeinformationen aufgefordert.

  2. Wählen Sie User Pools (Benutzerpools) aus.

  3. Wählen Sie einen vorhandenen Benutzerpool aus der Liste aus oder erstellen Sie einen neuen Benutzerpool.

  4. Wählen Sie die Registerkarte Sign-in experience (Anmeldeerlebnis) aus. Suchen Sie nach Federated sign-in (Verbundanmeldung) und wählen Sie Add an identity provider (Identitätsanbieter hinzufügen) aus.

  5. Wählen Sie einen Social-Identity-Anbieter aus: Facebook, Google, Login with Amazon oder Mit Apple anmelden.

  6. Wählen Sie basierend auf Ihrer Wahl des Social-Identity-Anbieters aus den folgenden Schritten:

    • Google und Login with Amazon — Geben Sie die App-Client-ID und das App-Client-Geheimnis ein, die im vorherigen Abschnitt generiert wurden.

    • Facebook — Geben Sie die App-Client-ID und das App-Client-Geheimnis ein, die im vorherigen Abschnitt generiert wurden, und wählen Sie dann eine API Version aus (z. B. Version 2.12). Wir empfehlen, die neueste mögliche Version zu wählen — jede Facebook-Version API hat einen Lebenszyklus und ein Verfallsdatum. Der Umfang und die Attribute von Facebook können je nach Version variieren. API Wir empfehlen, Ihre Social-Identity-Anmeldung mit Facebook zu testen, um sicherzustellen, dass der Verband wie vorgesehen funktioniert.

    • Mit Apple anmelden — Geben Sie die Service-ID, die Team-ID, die Schlüssel-ID und den privaten Schlüssel ein, die im vorherigen Abschnitt generiert wurden.

  7. Geben Sie die Namen der autorisierten Bereiche ein, die Sie verwenden möchten. Bereiche definieren, auf welche Benutzerattribute (wie z. B. name und email) mit Ihrer App zugreifen möchten. Für Facebook müssen diese durch Kommata voneinander getrennt werden. Für Google und "Login with Amazon (Anmelden mit Amazon)" müssen die Werte mit Leerzeichen getrennt werden. Aktivieren Sie für "Sign in with Apple (Mit Apple anmelden)" die Kontrollkästchen der Bereiche, auf die Sie Zugriff benötigen.

    Anbieter sozialer Identitäten Beispiel-Bereiche
    Facebook public_profile, email
    Google profile email openid
    Login with Amazon profile postal_code
    Mit Apple anmelden email name

    Der App-Benutzer wird aufgefordert, der Bereitstellung dieser Attribute für die App zuzustimmen. Weitere Informationen zu den jeweiligen Bereichen enthält die Dokumentation von Google, Facebook, Login with Amazon oder Mit Apple anmelden.

    Bei Verwendung von „Mit Apple anmelden“ werden Bereiche in den folgenden Benutzerszenarien unter Umständen nicht zurückgegeben:

    • Ein Endbenutzer stößt nach dem Verlassen der Anmeldeseite von Apple auf Fehler (diese können auf interne Fehler in Amazon Cognito oder auf vom Entwickler geschriebene Daten zurückzuführen sein).

    • Die Service-ID-ID wird in allen Benutzerpools und/oder anderen Authentifizierungsdiensten verwendet.

    • Ein Entwickler fügt zusätzliche Bereiche hinzu, nachdem sich der Benutzer angemeldet hat. Benutzer rufen neue Informationen nur ab, wenn sie sich authentifizieren und ihre Token aktualisieren.

    • Ein Entwickler löscht den Benutzer und der Benutzer meldet sich dann erneut an, ohne die App aus seinem Apple-ID-Profil zu entfernen.

  8. Ordnen Sie Ihrem Benutzerpool Attribute von Ihrem Identitätsanbieter zu. Weitere Informationen finden Sie unter Wissenswertes über Mappings.

  9. Wählen Sie Create (Erstellen) aus.

  10. Wählen Sie auf der Registerkarte App client integration (App-Client-Integration) einen der App-Clients aus der Liste aus und klicken Sie anschließend auf Edit hosted UI settings (Einstellungen für gehostete UI bearbeiten). Fügen Sie unter Identity providers (Identitätsanbieter) den neuen Social-Identity-Anbieter zum App-Client hinzu.

  11. Wählen Sie Änderungen speichern.

Testen der Konfiguration Ihres Social-Identity-Anbieters

Sie können ein Login erstellen, URL indem Sie die Elemente aus den beiden vorherigen Abschnitten verwenden. Verwenden Sie sie zum Testen der Konfiguration Ihres sozialen IdP.

https://mydomain.us-east-1.amazoncognito.com/login?response_type=code&client_id=1example23456789&redirect_uri=https://www.example.com

Sie finden Ihre Domäne auf der Konsolenseite Domain name (Domänenname) für den Benutzerpool. Die Client-ID befindet sich auf der Registerkarte App client settings (App-Client-Einstellungen). Verwenden Sie Ihren Callback URL für den Parameter redirect_uri. Dies ist die URL Seite, auf die Ihr Benutzer nach einer erfolgreichen Authentifizierung weitergeleitet wird.

Anmerkung

Amazon Cognito bricht Authentifizierungsanfragen ab, die nicht innerhalb von 5 Minuten abgeschlossen werden, und leitet den Benutzer an die gehostete Benutzeroberfläche um. Für die Seite wird eine Something went wrong-Fehlermeldung angezeigt.