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.
Verwendung von OIDC-Identitätsanbietern mit einem Benutzerpool
Benutzer können sich mit ihren vorhandenen Konten von OpenID Connect (OIDC) -Identitätsanbietern () bei Ihrer Anwendung anmelden. IdPs Mit OIDC-Anbietern können Benutzer unabhängiger Single-Sign-On-Systeme vorhandene Anmeldeinformationen angeben, während Ihre Anwendung OIDC-Token im gemeinsamen Format von Benutzerpools erhält. Um einen OIDC-IdP zu konfigurieren, richten Sie Ihren IdP so ein, dass er Ihren Benutzerpool als RP verwaltet, und konfigurieren Sie Ihre Anwendung so, dass Ihr Benutzerpool als IdP behandelt wird. Amazon Cognito dient als Zwischenschritt zwischen mehreren OIDC und Ihren Anwendungen. IdPs Ihr Benutzerpool wendet Regeln zur Attributzuordnung auf die Ansprüche in der ID und den Zugriffstoken an, die Ihr Anbieter direkt an Ihren Benutzerpool weiterleitet. Amazon Cognito gibt dann neue Token aus, die auf den zugewiesenen Benutzerattributen und allen zusätzlichen Anpassungen basieren, die Sie mit Lambda-Triggern am Authentifizierungsablauf vorgenommen haben. Lambda-Auslöser für Verbundbenutzer
Benutzer, die sich mit einem OIDC-IdP anmelden, müssen keine neuen Anmeldeinformationen oder Informationen angeben, um auf Ihre Benutzerpool-Anwendung zuzugreifen. Ihre Anwendung kann sie zur Anmeldung im Hintergrund an ihren IdP weiterleiten. Im Hintergrund befindet sich ein Benutzerpool als Tool, das das Token-Format für Ihre Anwendung standardisiert. Weitere Informationen zur IdP-Umleitung finden Sie unter. Autorisieren des Endpunkts
Wie bei anderen externen Identitätsanbietern müssen Sie Ihre Anwendung beim OIDC-Anbieter registrieren und Informationen über die IdP-Anwendung abrufen, die Sie mit Ihrem Benutzerpool verbinden möchten. Ein OIDC-IdP für einen Benutzerpool benötigt eine Client-ID, einen geheimen Client-Schlüssel, Bereiche, die Sie anfordern möchten, und Informationen zu den Dienstendpunkten des Anbieters. Ihr Benutzerpool kann die Provider-OIDC-Endpunkte von einem Discovery-Endpunkt aus ermitteln, oder Sie können sie manuell eingeben. Sie müssen auch die Provider-ID-Token untersuchen und Attributzuordnungen zwischen dem IdP und den Attributen in Ihrem Benutzerpool erstellen.
Weitere Informationen Authentifizierungsablauf für den OIDC-Benutzerpool-IdP zu diesem Authentifizierungsablauf finden Sie unter.
Anmerkung
Sign-in über einen Drittanbieter (Verband) ist in Amazon Cognito-Benutzerpools verfügbar. Diese Funktion ist unabhängig vom OIDC-Verbund mit Amazon Cognito-Identitätspools.
Sie können Ihrem Benutzerpool einen OIDC-IdP in der AWS-Managementkonsole, über die oder mit der AWS CLI Benutzerpool-API-Methode hinzufügen. CreateIdentityProvider
Themen
Voraussetzungen
Bevor Sie beginnen, muss Folgendes sichergestellt sein:
-
Ein Benutzerpool mit einem App-Client und eine Benutzerpool-Domäne. Weitere Informationen finden Sie unter Einen Benutzerpool erstellen.
-
Ein OIDC IdP mit folgender Konfiguration:
-
Unterstützt die
client_secret_postClientauthentifizierung. Amazon Cognito überprüft nicht dentoken_endpoint_auth_methods_supported-Antrag am OIDC-Erkennungsendpunkt für Ihren IdP. Amazon Cognito unterstützt nicht dieclient_secret_basicClientauthentifizierung. Weitere Informationen zur Clientauthentifizierung finden Sie unter Clientauthentifizierungin der Dokumentation zu OpenID Connect. -
Verwendet HTTPS nur für OIDC-Endpunkte wie
openid_configuration,userInfoundjwks_uri. -
Verwendet nur die TCP-Ports 80 und 443 für OIDC-Endpunkte.
-
Signiert ID-Token nur mit ECDSA HMAC-SHA - oder RSA-Algorithmen.
-
Veröffentlicht einen Schlüssel-ID
kid-Anspruch amjwks_uriund enthält einenkid-Anspruch in seinen Token. -
Stellt einen nicht abgelaufenen öffentlichen Schlüssel mit einer gültigen Root-CA-Vertrauenskette dar.
-
Registrieren Sie eine Anwendung bei einem OIDC-IdP
Bevor Sie Ihrer Benutzerpool-Konfiguration einen OIDC-IdP hinzufügen und ihn App-Clients zuweisen, richten Sie eine OIDC-Client-Anwendung in Ihrem IdP ein. Ihr Benutzerpool ist die Anwendung der Vertrauenspartei, die die Authentifizierung bei Ihrem IdP verwaltet.
Registrieren mit einem OIDC-IdP
-
Erstellen Sie ein Entwickler-Konto bei dem OIDC-IdP.
Links zu OIDC IdPs OIDC-IdP Installieren URL für die OIDC-Erkennung Salesforce https://MyDomainName.my.salesforce.com/.well-known/openid-configurationOneLogin Verbinden Sie eine OIDC-fähige App https://your-domain.onelogin.com/oidc/2/.well-known/openid-configurationJumpCloud SSO mit OIDC https://oauth.id.jumpcloud.com/.well-known/openid-configurationOkta https://Your Okta subdomain.okta.com/.well-known/openid-configurationMicrosoft Entra ID https://login.microsoftonline.com/{tenant}/v2.0Die Werte von
tenantkönnen eine Mandanten-ID,commonorganizations, oderconsumersenthalten. -
Registrieren Sie Ihre Benutzerpool-Domänen-URL mit dem Endpunkt
/oauth2/idpresponsebei Ihrem OIDC-Identitätsanbieter. Auf diese Weise wird sichergestellt, dass der OIDC-Identitätsanbieter sie von Amazon Cognito später akzeptiert, wenn es Benutzer authentifiziert.https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/idpresponse -
Wählen Sie die Bereiche aus, die Ihr Benutzerverzeichnis mit Ihrem Benutzerpool teilen soll. Der Bereich openid ist erforderlich, damit OIDC Benutzerinformationen IdPs anbieten kann. Der
emailGeltungsbereich wird benötigt, um Zugriff auf die und Claims zu gewähren.emailemail_verifiedhttps://openid.net/specs/openid-connect-basic-1_0.html#StandardClaimsZusätzliche Bereiche in der OIDC-Spezifikation gelten profilefür alle Benutzerattribute und für undphone.phone_numberphone_number_verified -
Der OIDC-Identitätsanbieter stellt Ihnen eine Client-ID und einen geheimen Client-Schlüssel bereit. Notieren Sie sich diese Werte und fügen Sie sie der Konfiguration des OIDC-IdP hinzu, den Sie später zu Ihrem Benutzerpool hinzufügen.
Beispiel: Verwendung von Salesforce als OIDC-Identitätsanbieter für Ihren Benutzerpool
Sie verwenden einen OIDC-IdP, wenn Sie eine Vertrauensstellung zwischen einem OIDC-compatible IdP wie Salesforce und Ihrem Benutzerpool herstellen möchten.
-
Erstellen Sie ein Konto
auf der Salesforce-Entwickler-Website. -
Melden Sie sich über Ihr Entwickler-Konto an, das Sie im vorherigen Schritt eingerichtet haben.
-
Führen Sie auf Ihrer Salesforce-Seite einen der folgenden Schritte aus:
-
Wenn Sie Lightning Experience verwenden, wählen Sie das Zahnradsymbol für die Einrichtung und dann Setup Home (Einrichtung Startseite) aus.
-
Wenn Sie Salesforce Classic verwenden und Setup (Einstellung) in der Kopfzeile der Benutzeroberfläche sehen, wählen Sie es aus.
-
Wenn Sie Salesforce Classic verwenden und Setup (Einstellung) nicht angezeigt wird, wählen Sie Ihren Namen in der oberen Navigationsleiste und wählen dann Setup (Einstellung) aus der Dropdown-Liste aus.
-
-
Wählen Sie in der linken Navigationsleiste Company Settings (Unternehmenseinstellungen).
-
Wählen Sie in der Navigationsleiste Domain (Domäne), geben Sie eine Domäne ein und wählen Sie Create (Erstellen).
-
Wählen Sie in der linken Navigationsleiste Platform Tools (Plattform-Tools) und wählen Sie Apps (Anwendungen).
-
Wählen Sie App Manager.
-
-
Wählen Sie new connected app (neue verbundene App) aus.
-
Füllen Sie die Pflichtfelder aus.
Geben Sie unter Start URL (Start-URL) eine URL am
/authorize-Endpunkt für die Benutzerpool-Domäne ein, die sich bei Ihrem Salesforce-IDP anmeldet. Wenn Ihre Benutzer auf Ihre verbundene App zugreifen, leitet Salesforce sie an diese URL weiter, um die Anmeldung abzuschließen. Dann leitet Salesforce die Benutzer an die Rückruf-URL um, die Sie Ihrem App-Client zugeordnet haben.https://mydomain.auth.us-east-1.amazoncognito.com/authorize?response_type=code&client_id=<your_client_id>&redirect_uri=https://www.example.com&identity_provider=CorpSalesforce -
Aktivieren Sie OAuth settings (OAuth-Einstellungen) und geben Sie die URL des
/oauth2/idpresponse-Endpunkts für Ihre Benutzerpool-Domäne unter Callback URL (Rückruf-URL) ein. Dies ist die URL, mit der SalesForce den Autorisierungscode ausgibt, den Amazon Cognito gegen ein OAuth-Token eintauscht.https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/idpresponse
-
-
Wählen Sie Ihre Bereiche
aus. Sie müssen den Bereich openid einschließen. Fügen Sie den Bereich email hinzu, um Zugriff auf die Ansprüche email und email_verified zu erteilen. Trennen Sie Bereiche durch Leerzeichen. -
Wählen Sie Erstellen aus.
In Salesforce wird die Client-ID als Consumer Key (Verbraucherschlüssel) bezeichnet, der geheime Client-Schlüssel als Consumer Secret (Verbrauchergeheimnis). Notieren Sie die Client-ID und den geheimen Client-Schlüssel. Sie brauchen diese Informationen im nächsten Abschnitt.
Hinzufügen eines OIDC-IdP zu Ihrem Benutzerpool
Nachdem Sie Ihren IdP eingerichtet haben, können Sie Ihren Benutzerpool so konfigurieren, dass Authentifizierungsanfragen mit einem OIDC-IdP verarbeitet werden.
Testen Ihrer OIDC-IdP-Konfiguration
In Ihrer Anwendung müssen Sie einen Browser im Client des Benutzers aufrufen, damit sich dieser bei seinem OIDC-Anbieter anmelden kann. Testen Sie die Anmeldung bei Ihrem Anbieter, nachdem Sie die Einrichtungsverfahren in den vorherigen Abschnitten abgeschlossen haben. Die folgende Beispiel-URL lädt die Anmeldeseite für Ihren Benutzerpool mit einer Präfix-Domain.
https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/authorize?response_type=code&client_id=1example23456789&redirect_uri=https://www.example.com
Dieser Link ist die Seite, zu der Amazon Cognito Sie weiterleitet, wenn Sie zum App-Client-Menü gehen, einen App-Client auswählen, zum Tab Anmeldeseiten navigieren und Anmeldeseite anzeigen auswählen. Weitere Informationen zu Benutzerpool-Domains finden Sie unterKonfigurieren einer Benutzerpool-Domäne. Weitere Informationen zu App-Clients, einschließlich Client-IDs und Rückruf-URLs, finden Sie unterAnwendungsspezifische Einstellungen mit App-Clients.
Der folgende Beispiel-Link richtet eine automatische Weiterleitung vom MyOIDCIdP Anbieter Autorisieren des Endpunkts mit einem identity_provider Abfrageparameter ein. Diese URL umgeht die interaktive Benutzerpool-Anmeldung mit verwalteter Anmeldung und leitet direkt zur IdP-Anmeldeseite weiter.
https://mydomain.auth.us-east-1.amazoncognito.com/oauth2/authorize?identity_provider=MyOIDCIdP&response_type=code&client_id=1example23456789&redirect_uri=https://www.example.com