Wie integriere ich IAM Identity Center in einen Amazon-Cognito-Benutzerpool?

Lesedauer: 5 Minute
0

Ich möchte AWS IAM Identity Center (Nachfolger von AWS Single Sign-On) mit einem externen Identitätsanbieter (IdP) für meinen Amazon-Cognito-Benutzerpool konfigurieren.

Kurzbeschreibung

Amazon-Cognito-Benutzerpools ermöglichen die Anmeldung über IdPs von Drittanbietern. Benutzer können IAM Identity Center verwenden, um sich über den Security Assertion Markup Language Version 2.0 (SAML 2.0) IdP zu verbinden. Weitere Informationen finden Sie unter So funktioniert die Verbundanmeldung in Amazon-Cognito-Benutzerpools.

Ein in IAM Identity Center integrierter Benutzerpool ermöglicht es Benutzern, Benutzerpool-Token von Amazon Cognito zu erhalten. Weitere Informationen finden Sie unter Verwenden von Tokens mit Benutzerpools.

Lösung

Gehen Sie wie folgt vor, um einen Amazon-Cognito-Benutzerpool in IAM Identity Center zu integrieren.

Hinweis: Wenn Sie bereits einen Benutzerpool mit einem App-Client haben, überspringen Sie den folgenden Abschnitt.

Erstellen Sie einen Amazon-Cognito-Benutzerpool mit einem App-Client und einem Domänennamen

1.    Erstellen Sie einen Benutzerpool.

2.    Fügen Sie einen App-Client hinzu und richten Sie die gehostete Web-Benutzeroberfläche ein.

3.    Fügen Sie einen Domänennamen für Ihren Benutzerpool hinzu.

Hinweis: Wenn Sie bereits über eine funktionierende IAM-Identity-Center-Umgebung verfügen, überspringen Sie den folgenden Abschnitt.

Aktivieren Sie IAM Identity Center und fügen Sie einen Benutzer hinzu

1.    Bevor Sie IAM Identity Center aktivieren, sollten Sie sich mit den Voraussetzungen und Überlegungen vertraut machen.

2.    Aktivieren Sie IAM Identity Center.

3.    Wählen Sie Ihre Identitätsquelle und erstellen Sie einen Benutzer.

Konfigurieren Sie eine SAML-Anwendung über die IAM-Identity-Center-Konsole

1.    Öffnen Sie die IAM-Identity-Center-Konsole, und wählen Sie dann vom Navigationsbereich Anwendungen aus.

2.    Wählen Sie Anwendung hinzufügen und Benutzerdefinierte SAML 2.0-Anwendung hinzufügen und wählen Sie dann Weiter.

3.    Geben Sie auf der Seite Anwendung konfigurieren einen Anzeigenamen und eine Beschreibung ein.

4.    Kopieren Sie die URL der IAM-Identity-Center-SAML-Metadatendatei oder wählen Sie den Hyperlink Herunterladen. Sie verwenden diese Ressourcen in späteren Schritten, um einen IdP in einem Benutzerpool zu erstellen.

5.    Wählen Sie unter Anwendungsmetadaten die Option Manuelles Eingeben Ihrer Metadatenwerte aus. Geben Sie dann die folgenden Werte ein.

Wichtig: Stellen Sie sicher, dass Sie die Werte für das Domänenpräfix, die Region und die Benutzerpool-ID durch Informationen ersetzen, die für Ihre Umgebung spezifisch sind.

URL des Application Assertion Consumer Service (ACS): https://<domain-prefix>.auth.<region>.amazoncognito.com/saml2/idpresponse SAML-Zielgruppe der Anwendung: urn:amazon:cognito:sp:<userpool-id>

6.    Wählen Sie Absenden aus. Gehen Sie dann zur Detailseite für die Anwendung, die Sie hinzugefügt haben.

7.    Wählen Sie die Dropdown-Liste Aktionen und wählen Sie Attributzuordnungen bearbeiten. Geben Sie dann die folgenden Attribute an.

Benutzerattribut in der Anwendung: Betreff
Hinweis: Der Betreff ist bereits ausgefüllt.
Entspricht diesem String-Wert oder Benutzerattribut im IAM Identity Center: ${user:subject}
Format: Persistent

Benutzerattribut in der Anwendung: E-Mail
Entspricht diesem String-Wert oder Benutzerattribut im IAM Identity Center: ${user:email} Format: Basic

Die zugeordneten Attribute werden bei der Anmeldung an Amazon Cognito gesendet. Stellen Sie sicher, dass alle erforderlichen Attribute Ihres Benutzerpools hier zugeordnet sind. Weitere Informationen zu Attributen, die für das Mapping verfügbar sind, finden Sie unter Unterstützte IAM-Identity-Center-Attribute.

8.    Speichern Sie Ihre Änderungen.

9.    Wählen Sie die Schaltfläche Benutzer zuweisen und weisen Sie dann Ihren Benutzer der Anwendung zu.

Konfigurieren Sie IAM Identity Center als SAML IdP in Ihrem Benutzerpool

1.    Konfigurieren Sie einen SAML-IdP in Ihrem Benutzerpool. Wenden Sie die folgenden Einstellungen an:

Geben Sie unter Metadatendokument die Metadaten-URL an oder laden Sie die Datei hoch, die Sie in Schritt 4 des vorherigen Abschnitts heruntergeladen haben. Weitere Informationen finden Sie unter SAML-Identitätsanbieter von Drittanbietern in Amazon-Cognito-Benutzerpools integrieren.

Geben Sie den Namen Ihres SAML-Providers ein. Weitere Informationen finden Sie unter Namen für SAML-Identitätsanbieter auswählen.

(Optional) Geben Sie beliebige SAML-Identifikatoren ein.

2.    Konfigurieren Sie eine SAML-Provider-Attributzuordnung. Wenden Sie die folgenden Einstellungen an:

Geben Sie im Feld SAML-Attribut einen E-Mail-Wert ein, der dem in Schritt 7 des vorherigen Abschnitts angegebenen Benutzerattributwert entspricht. Wählen Sie im Feld Benutzerpool-Attribut die Option E-Mail aus der Dropdown-Liste aus.

Hinweis: Fügen Sie alle anderen Attribute hinzu, die in Schritt 7 des vorherigen Abschnitts in IAM Identity Center konfiguriert wurden.

3.    Speichern Sie Ihre Änderungen.

Integrieren Sie den IdP in den Benutzerpool-App-Client

1.    Melden Sie sich bei der neuen Amazon-Cognito-Konsole an.

2.    Wählen Sie Benutzerpools und wählen Sie einen entsprechenden Benutzerpool aus.

3.    Wählen Sie die Registerkarte App-Integration und dann App-Client-Liste.

4.    Wählen Sie den entsprechenden App-Client aus.

5.    Wählen Sie im Bereich Gehostete Benutzeroberfläche die Option Bearbeiten aus.

6.    Wählen Sie den entsprechenden IdP aus.

7.    Speichern Sie Ihre Änderungen.

Einrichtung testen

1.    Starten Sie eine gehostete Benutzeroberfläche oder erstellen Sie die URL des Anmeldeendpunkts mithilfe des folgenden Benennungsmusters:

https://example_domain_prefix.auth.example_region.amazoncognito.com/login?response_type=token&client_id=example_client_id&redirect_uri=example_redirect_url

Zum Beispiel: https://my-user-pool.auth.us-east-1.amazoncognito.com/login?response_type=code&client_id=a1b2c3d4e5f6g7h8i9j0k1l2m3&redirect_uri=https://example.com

Wählen Sie für OAuth-2.0-Gewährungstypen die Option Autorisierungscode gewähren, damit der Anmeldeendpunkt Amazon Cognito auffordert, Autorisierungscodes zurückzugeben, wenn sich Benutzer anmelden. Wählen Sie für OAuth-2.0-Gewährungstypen die Option Implizite Gewährung für Amazon Cognito aus, um Zugriffstoken zurückzugeben, wenn sich Benutzer anmelden. Ersetzen Sie dann response_type=code in der URL durch response_type=token.

2.    Wählen Sie IAM idC.

Wenn Sie zur Callback-URL Ihres App-Clients weitergeleitet werden, sind Sie in Ihrem Browser bereits als Benutzer angemeldet. Die Benutzerpool-Token werden direkt in der URL der Adressleiste des Webbrowsers angezeigt.

Hinweis: Um diesen Schritt zu überspringen, erstellen Sie eine URL des Autorisierungsendpunkts mit dem folgenden Benennungsmuster:
https://yourDomainPrefix.auth.region.amazoncognito.com/oauth2/authorize?response_type=token&identity_provider=samlProviderName&client_id=yourClientId&redirect_uri=redirectUrl&scope=allowedOauthScopes

3.    Geben Sie die Benutzeranmeldeinformationen ein und wählen Sie Anmelden.

4.    Wenn Sie zu der Rückruf-URL weitergeleitet werden, die einen Code oder ein Token von Amazon Cognito in der Adressleiste des Browsers enthält, ist die Einrichtung abgeschlossen.

Hinweis: Amazon Cognito unterstützt nur vom Dienstanbieter (SP) initiierte Anmeldungen. Sie müssen den Anmelde-Endpunkt oder den Autorisierungs-Endpunkt verwenden, um das Setup zu testen. Das Starten einer IdP-initiierten Anmeldung mit dem AWS-Zugangsportal für IAM Identity Center funktioniert nicht.


AWS OFFICIAL
AWS OFFICIALAktualisiert vor 4 Monaten