Wie behebe ich Lambda-Triggerfehler bei der Amazon Cognito-Benutzermigration?

Lesedauer: 4 Minute
0

Ich möchte die Fehler beheben, die bei der Verwendung des AWS-Lambda-Triggers für die Benutzermigration in Amazon Cognito auftreten.

Auflösung

Im Folgenden sind häufige Fehler aufgeführt, die bei der Verwendung des Lambda-Triggers für die Benutzermigration auftreten können.

"An error occurred (InvalidParameterException) when calling the InitiateAuth operation: USER_PASSWORD_AUTH flow not enabled for this client" (Beim Aufrufen der initiateAuth-Operation ist ein Fehler aufgetreten (InvalidParameterException): Der USER_PASSWORD_AUTH-Flow ist für diesen Client nicht aktiviert)

Dieser Fehler tritt auf, wenn der App-Client des Amazon Cognito-Benutzerpools nicht für die Verwendung der Flows USER_PASSWORD_AUTH oder ADMIN_USER_PASSWORD_AUTH konfiguriert ist. Um diesen Fehler zu beheben, aktivieren Sie die Flows USER_PASSWORD_AUTH oder ADMIN_USER_PASSWORD_AUTH in Ihrem App-Client, bevor Sie einen Lambda-Trigger für die Benutzermigration hinzufügen.

Um den Ablauf USER_PASSWORD_AUTH oder ADMIN_USER_PASSWORD_AUTH zu aktivieren, wählen Sie diesen Authentifizierungsablauf in Ihrem App-Client aus. Verwenden Sie diese Flows anstelle des standardmäßigen USER_SRP_AUTH-Flows. Amazon Cognito sendet ein Passwort an Ihre Lambda-Funktion, um Ihre Benutzerauthentifizierung im anderen Verzeichnis zu überprüfen.

"An error occurred (UserNotFoundException) when calling the InitiateAuth operation: Exception migrating user in app client <example_client_id>" (Beim Aufrufen der initiateAuth-Operation ist ein Fehler aufgetreten (UserNotFoundException): Ausnahme beim Migrieren des Benutzers im App-Client <example_client_id>)

Dieser Fehler tritt auf, wenn die Lambda-Funktion, die als Lambda-Trigger für die Benutzermigration festgelegt ist, keine korrekt konfigurierte Autorisierungsrichtlinie hat. In diesem Fall erlaubt die Richtlinie dem Principal des Amazon Cognito-Dienstkontos,cognito-idp.amazonaws.com, nicht, die Lambda-Funktion aufzurufen. Weitere Informationen finden Sie unter Verwenden von ressourcenbasierten Richtlinien für Lambda.

Dieser Fehler tritt auch auf, wenn Sie die Lambda-Funktion nicht als Lambda-Trigger für die Benutzermigration für Ihren Amazon Cognito-Benutzerpool festlegen. Um diesen Fehler zu beheben, stellen Sie sicher, dass Sie Ihre Lambda-Funktion als Lambda-Trigger für die Benutzermigration für Ihren Benutzerpool konfigurieren.

"An error occurred (UserNotFoundException) when calling the InitiateAuth operation: Error during migration: invalid finalUserStatus" (Beim Aufrufen der initiateAuth-Operation ist ein Fehler aufgetreten (UserNotFoundException): Fehler bei der Migration: ungültiger finalUserStatus)

Dieser Fehler tritt auf, wenn Sie FinalUserStatus auf einen anderen Wert als CONFIRMED setzen. Um diesen Fehler zu beheben, ändern Sie FinalUserStatus in CONFIRMED, sodass der Benutzer vor der Anmeldung keine zusätzlichen Aktionen ausführen muss.

Die Fehler Ungültige messageAction oder ungültige desiredDeliveryMediums treten auf, wenn der Parameterwert, den die Lambda-Funktion an Amazon Cognito zurück gibt, kein erwarteter Wert ist. Um diese Fehler zu beheben, ändern Sie die Parameter auf erwartete Werte. Informationen zu Anforderungs- und Antwortparametern finden Sie unter Migrieren von Lambda-Triggerparametern für Benutzer.

"An error occurred (UserNotFoundException) when calling the InitiateAuth operation: Attributes did not conform to the schema: <example_attribute>: Attribute does not exist in the schema" (Beim Aufrufen der initiateAuth-Operation ist ein Fehler aufgetreten (UserNotFoundException): Die Attribute entsprachen nicht dem Schema: <example\ _attribute>:Das Attribut ist im Schema nicht vorhanden)

Dieser Fehler tritt auf, wenn ein Attribut, das in der Antwort der Lambda-Funktion enthalten ist, kein Attribut in Ihrem Amazon Cognito-Benutzerpool ist. Um diesen Fehler zu beheben, stellen Sie sicher, dass Sie Attribute zurückgeben, die im Schema Ihres Benutzerpools vorhanden sind.

"Exception during user migration" (Ausnahme bei der Benutzermigration) -oder- "UserMigration failed with error: <example error message>„ (Die UserMigration ist mit einem Fehler fehlgeschlagen)

Diese Fehler werden auf der Seite gehostete Benutzeroberfläche angezeigt und können aus einem der zuvor genannten Gründe auftreten.

Da es sich bei diesen Fehlermeldungen um generische Fehlermeldungen handelt, kann es schwierig sein, einen bestimmten Grund für den Fehler zu identifizieren. Um weitere Informationen zu dem Fehler bei der Migration von Benutzern mit der gehosteten Benutzeroberfläche zu erhalten, führen Sie den folgenden AWS-Befehlszeileninterface (AWS CLI) -Befehl aus:

$ aws cognito-idp initiate-auth --client-id <your-client-id>
    --auth-flow USER_PASSWORD_AUTH --auth-parameters "USERNAME=<username>,PASSWORD=<password>"

**Hinweis:Ersetzen<your-client-id>**mit Ihrer Kunden-ID. Ersetzen <username> mit Ihrem Benutzernamen. Ersetzen <password> mit Ihrem Passwort.

Hinweis: Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.

Der Befehl ruft die Lambda-Funktion für die Benutzermigration auf. Alle zurückgegebenen Fehler enthalten detaillierte Meldungen.

Verwandte Informationen

Benutzer mit einem Lambda-Trigger für die Benutzermigration in Benutzerpools importieren

Lambda-Trigger des Benutzers migrieren

Beispiel: Migrieren Sie einen Benutzer mit einem vorhandenen Passwort

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr