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 Drittanbieter-IdPs. 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.

Behebung

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 eines Amazon-Cognito-Benutzerpools mit einem App-Client und einem Domainnamen

1.Erstellen Sie einen Benutzerpool.

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

3.Fügen Sie einen Domainnamen 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 einer SAML-Anwendung über die IAM-Identity-Center-Konsole

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

2.Wählen Sie Anwendung hinzufügen und Benutzerdefinierte SAML-2.0-Anwendung hinzufügen aus, und klicken Sie dann auf Weiter.

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

4.Kopieren Sie die URL der SAML-Metadatendatei von IAM Identity Center 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 an.

**Wichtig:**Achten Sie darauf, die Werte für den Domain-Präfix, die Region und die Benutzerpool-ID durch Informationen zu 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-Anwendungszielgruppe: urn:amazon:cognito:sp:<userpool-id>

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

7.Wählen Sie die Dropdownliste Aktionen aus und wählen Sie Attributzuordnungen bearbeiten aus. Geben Sie dann die folgenden Attribute an.

Benutzerattribut in der Anwendung: Betreff
Hinweis: Der Betreff ist vorausgefüllt.
Ordnet diesem Zeichenkettenwert oder Benutzerattribut in IAM Identity Center zu: ${user:subject}
Format: Persistent

Benutzerattribut in der Anwendung: E-Mail
Ordnet diesem Zeichenkettenwert oder Benutzerattribut in IAM Identity Center zu: ${user:email}
Format: Grundlegend

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 die Zuordnung 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 von 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 Metadaten-Dokument die Metadaten-URL ein oder laden Sie die Datei hoch, die Sie in Schritt 4 des vorherigen Abschnitts heruntergeladen haben. Weitere Informationen finden Sie unter Integration von SAML-Drittidentitätsanbietern in Amazon-Cognito-Benutzerpools.

Geben Sie den Namen Ihres SAML-Anbieters ein. Weitere Informationen finden Sie unter Namen von SAML-Identitätsanbietern auswählen.

(Optional) Geben Sie beliebige SAML-Identifikatoren ein.

2.Konfigurieren Sie eine SAML-Anbieter-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 Dropdownliste aus.

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

3.Speichern Sie Ihre Änderungen.

Integrieren des 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 geeigneten 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.

Testen Sie das Setup

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, sodass 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 in der URL response_type=code durch response_type=token.

2.Wählen Sie IAM IdC aus.

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 Authorize Endpoint URL 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 Callback-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 Service Provider (SP) initiierte Anmeldungen. Sie müssen den Anmelde-Endpunkt oder den Autorisierungsendpunkt verwenden, um das Setup zu testen. Das Starten einer vom IdP initiierten Anmeldung mit dem AWS-Zugriffsportal für IAM Identity Center funktioniert nicht.

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr