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.
Lambda-Auslöser für die Benutzermigration.
Wenn ein Benutzer zum Zeitpunkt der Anmeldung mit einem Passwort oder während des Ablaufs bei vergessenem Passwort nicht im Benutzerpool vorhanden ist, ruft Amazon Cognito den Auslöser auf. Nachdem die Lambda-Funktion erfolgreich ausgeführt wurde, erstellt Amazon Cognito den Benutzer in den Benutzerpool. Weitere Informationen zum Authentifizierungsablauf mit dem Lambda-Auslöser für die Benutzermigration finden Sie unter Importieren von Benutzern mit einem Lambda-Auslöser für die Benutzermigration.
Um Benutzer zum Zeitpunkt der Anmeldung oder während des Ablaufs bei vergessenem Passwort aus Ihrem vorhandenen Benutzerverzeichnis in Amazon-Cognito-Benutzerpools zu migrieren, verwenden Sie diese Lambda-Auslöser.
Themen
Lambda-Auslöserquellen für die Benutzermigration
triggerSource Wert | Ereignis |
---|---|
UserMigration_Authentication |
Benutzermigration bei der Anmeldung. |
UserMigration_ForgotPassword |
Benutzermigration während des Ablaufs bei vergessenem Passwort. |
Lambda-Auslöserparameter für die Benutzermigration
Die Anforderung, die Amazon Cognito an diese Lambda-Funktion übergibt, ist eine Kombination der folgenden Parameter und der allgemeinen Parameter, die Amazon Cognito allen Anfragen hinzufügt.
Anforderungsparameter für die Benutzermigration
- userName
-
Der Benutzername, den der Benutzer bei der Anmeldung eingibt.
- password
-
Das Passwort, den der Benutzer bei der Anmeldung eingibt. Amazon Cognito sendet diesen Wert nicht in einer Anfrage, die durch einen Ablauf bei vergessenem Passwort initiiert wird.
- validationData
-
Ein oder mehrere Schlüssel-Wert-Paare, die die Validierungsdaten in der Anmeldeanforderung des Benutzers enthalten. Um diese Daten an Ihre Lambda-Funktion zu übergeben, können Sie den ClientMetadata Parameter in den AdminInitiateAuthAPIAktionen InitiateAuthund verwenden.
- clientMetadata
-
Ein oder mehrere Schlüssel-Wert-Paare, die Sie als benutzerdefinierte Eingabe für die Lambda-Funktion zum Migrieren von Benutzern bereitstellen können. Um diese Daten an Ihre Lambda-Funktion zu übergeben, können Sie den ClientMetadata Parameter in den ForgotPasswordAPIAktionen AdminRespondToAuthChallengeund verwenden.
Antwortparameter für die Benutzermigration
- userAttributes
-
Dies ist ein Pflichtfeld.
Dieses Feld muss ein oder mehrere Name-Wert-Paare enthalten, die Amazon Cognito im Benutzerprofil in Ihrem Benutzerpool speichert und als Benutzerattribute verwendet. Sie können sowohl Standard- als auch benutzerdefinierte Benutzerattribute aufnehmen. Für benutzerdefinierte Attribute muss das Präfix
custom:
angegeben werden, damit sie von Standardattributen unterschieden werden können. Weitere Informationen finden Sie unter Benutzerdefinierte Attribute.Anmerkung
Ein Benutzer benötigt eine verifizierte E-Mail-Adresse oder eine verifizierte Telefonnummer, um seine Passwörter im Ablauf bei vergessenem Passwort zurückzusetzen. Amazon Cognito sendet eine Nachricht mit einem Code zum Zurücksetzen des Passworts an die in den Benutzerattributen angegebene E-Mail-Adresse oder Telefonnummer.
Attribute Anforderung Alle Attribute, die beim Erstellen Ihres Benutzerpools als erforderlich gekennzeichnet sind Wenn erforderliche Attribute für die Migration fehlen, verwendet Amazon Cognito Standardwerte. username
Erforderlich, wenn Sie Ihren Benutzerpool mit Alias-Attributen zusätzlich zum Benutzernamen für die Anmeldung konfiguriert haben und der Benutzer einen gültigen Aliaswert als Benutzernamen eingegeben hat. Dieser Aliaswert kann eine E-Mail-Adresse, der bevorzugte Benutzername oder eine Telefonnummer sein.
Wenn die Anforderung und der Benutzerpool die Aliasanforderungen erfüllen, muss die Antwort Ihrer Funktion den erhaltenen
username
-Parameter einem Alias-Attribut zuweisen. Außerdem muss die Antwort Ihren eigenen Wert demusername
-Attribut zuweisen. Wenn Ihr Benutzerpool die Bedingungen nicht erfüllt, die für die Zuordnung des empfangenenusername
zu einem Alias erforderlich sind, muss derusername
-Parameter in der Antwort entweder genau mit der Anforderung übereinstimmen oder weggelassen werden.Anmerkung
username
muss innerhalb des Benutzerpools eindeutig sein. - finalUserStatus
-
Sie können diesen Parameter auf
CONFIRMED
festlegen, um Ihre Benutzer automatisch zu bestätigen, damit sie sich mit ihren vorherigen Passwörtern anmelden können. Wenn Sie einen Benutzer aufCONFIRMED
festlegen, müssen sie keine zusätzlichen Maßnahmen ergreifen, bevor sie sich anmelden können. Wenn Sie dieses Attribut nicht aufCONFIRMED
festlegen, ist es aufRESET_REQUIRED
eingestellt.Ein
finalUserStatus
vonRESET_REQUIRED
bedeutet, dass der Benutzer sein Passwort sofort nach der Migration bei der Anmeldung ändern muss und Ihre Client-App diePasswordResetRequiredException
während des Authentifizierungsflusses erledigen muss.Anmerkung
Amazon Cognito setzt die Kennwortstärkerichtlinie nicht durch, die Sie während der Migration mit einem Lambda-Auslöser für den Benutzerpool konfiguriert haben. Wenn das Kennwort nicht die von Ihnen konfigurierte Passwortrichtlinie erfüllt, akzeptiert Amazon Cognito das Kennwort trotzdem, damit es die Migration des Benutzers fortsetzen kann. Überprüfen Sie die Passwortstärke in Ihrem Code, um Richtlinien für die Passwortstärke durchzusetzen und Passwörter abzulehnen, die nicht der Richtlinie entsprechen. Wenn das Passwort dann nicht der Richtlinie entspricht, setzen Sie es finalUserStatus auf
RESET_REQUIRED
. - messageAction
-
Sie können diesen Parameter auf
SUPPRESS
festlegen, um die Begrüßungsnachricht abzulehnen, die Amazon Cognito normalerweise an neue Benutzer sendet. Wenn Ihre Funktion diesen Parameter nicht zurückgibt, sendet Amazon Cognito die Begrüßungsnachricht. - desiredDeliveryMediums
-
Sie können diesen Parameter so einstellen,
EMAIL
dass die Willkommensnachricht per E-Mail gesendet wird, oderSMS
dass die Willkommensnachricht per gesendet wirdSMS. Wenn Ihre Funktion diesen Parameter nicht zurückgibt, sendet Amazon Cognito die Willkommensnachricht vonSMS. - forceAliasCreation
-
Wenn Sie diesen Parameter auf setzen
TRUE
und die Telefonnummer oder E-Mail-Adresse im UserAttributes Parameter bereits als Alias für einen anderen Benutzer existiert, migriert der API Anruf den Alias vom vorherigen Benutzer auf den neu erstellten Benutzer. Der vorherige Benutzer kann sich nicht mehr mit diesem Alias anmelden.Wenn Sie diesen Parameter auf
FALSE
setzen und der Alias existiert, migriert Amazon Cognito den Benutzer nicht und gibt einen Fehler an die Client-App zurück.Wenn Sie diesen Parameter nicht zurückgeben, geht Amazon Cognito davon aus, dass der Wert „falsch“ ist.
- aktivieren SMSMFA
-
Setzen Sie diesen Parameter
true
auf, damit Ihr migrierter Benutzer die mehrstufige SMS SMS-Authentifizierung (MFA) abschließen muss, um sich anzumelden. Ihr Benutzerpool muss MFA aktiviert sein. Die Attribute des Benutzers in den Anforderungsparametern müssen eine Telefonnummer enthalten, andernfalls schlägt die Migration dieses Benutzers fehl.
Beispiel: Migration eines Benutzers mit einem bestehenden Passwort
Die Lambda-Funktion in diesem Beispiel migriert der Benutzer mit einem bestehenden Passwort und unterdrückt die Begrüßungsmeldung von Amazon Cognito.