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 benutzerdefinierte Authentifizierungsaufforderungen
Beim Aufbau Ihrer Authentifizierungsabläufe für Ihren Amazon Cognito Cognito-Benutzerpool stellen Sie möglicherweise fest, dass Sie Ihr Authentifizierungsmodell über die integrierten Abläufe hinaus erweitern möchten. Ein häufiger Anwendungsfall für die benutzerdefinierten Challenge-Trigger ist die Implementierung zusätzlicher Sicherheitsüberprüfungen, die über Benutzername, Passwort und Multi-Faktor-Authentifizierung (MFA) hinausgehen. Eine benutzerdefinierte Herausforderung ist jede Frage und Antwort, die Sie in einer von Lambda unterstützten Programmiersprache generieren können. Möglicherweise möchten Sie von Benutzern verlangen, dass sie ein CAPTCHA lösen oder eine Sicherheitsfrage beantworten, bevor sie sich authentifizieren dürfen. Ein weiterer potenzieller Bedarf besteht in der Integration mit speziellen Authentifizierungsfaktoren oder -geräten. Oder Sie haben möglicherweise bereits Software entwickelt, die Benutzer mit einem Hardware-Sicherheitsschlüssel oder einem biometrischen Gerät authentifiziert. Die Definition des Authentifizierungserfolgs für eine benutzerdefinierte Abfrage ist die Antwort, die Ihre Lambda-Funktion als richtig akzeptiert: zum Beispiel eine feste Zeichenfolge oder eine zufriedenstellende Antwort von einer externen API.
Sie können die Authentifizierung mit Ihrer benutzerdefinierten Abfrage beginnen und den Authentifizierungsprozess vollständig kontrollieren, oder Sie können eine Benutzername-Passwort-Authentifizierung durchführen, bevor Ihre Anwendung Ihre benutzerdefinierte Abfrage erhält.
Der Lambda-Trigger für benutzerdefinierte Authentifizierungsherausforderungen:
- Definiert
-
Initiiert eine Challenge-Sequenz. Legt fest, ob Sie eine neue Herausforderung initiieren, die Authentifizierung als abgeschlossen markieren oder den Authentifizierungsversuch beenden möchten.
- Erzeugt
-
Stellt die Frage an Ihre Anwendung, die der Benutzer beantworten muss. Diese Funktion kann eine Sicherheitsfrage oder einen Link zu einem CAPTCHA enthalten, das Ihre Anwendung Ihrem Benutzer anzeigen soll.
- Überprüft
-
Kennt die erwartete Antwort und vergleicht sie mit der Antwort, die Ihre Anwendung in der Challenge-Antwort liefert. Die Funktion ruft möglicherweise die API Ihres CAPTCHA-Dienstes auf, um die erwarteten Ergebnisse des Lösungsversuchs Ihres Benutzers abzurufen.
Diese drei Lambda-Funktionen sind miteinander verknüpft, um einen Authentifizierungsmechanismus zu bieten, den Sie vollständig kontrollieren können und den Sie selbst entworfen haben. Da für die benutzerdefinierte Authentifizierung Anwendungslogik in Ihrem Client und in den Lambda-Funktionen erforderlich ist, können Sie die benutzerdefinierte Authentifizierung nicht innerhalb der verwalteten Anmeldung verarbeiten. Dieses Authentifizierungssystem erfordert zusätzlichen Entwickleraufwand. Ihre Anwendung muss den Authentifizierungsablauf mit der Benutzerpools-API durchführen und die daraus resultierende Herausforderung mit einer maßgeschneiderten Anmeldeschnittstelle bewältigen, die die Frage in den Mittelpunkt der benutzerdefinierten Authentifizierungsherausforderung stellt.

Weitere Informationen zur Implementierung der benutzerdefinierten Authentifizierung finden Sie unter Benutzerdefinierter Authentifizierungsablauf und Aufforderungen
Authentifizierung zwischen den API-Vorgängen InitiateAuthoder AdminInitiateAuth, und RespondToAuthChallengeoder AdminRespondToAuthChallenge. In diesem Ablauf führt ein Benutzer die Authentifizierung durch Beantwortung aufeinanderfolgender Aufforderungen durch, bis die Authentifizierung entweder fehlschlägt oder Token für den Benutzer ausgestellt werden. Eine Antwort auf eine Herausforderung könnte eine neue Herausforderung sein. In diesem Fall reagiert Ihre Anwendung so oft wie nötig auf neue Herausforderungen. Eine erfolgreiche Authentifizierung erfolgt, wenn die Funktion Define Auth Challenge die bisherigen Ergebnisse analysiert, feststellt, dass alle Challenges beantwortet wurden, und ein Ergebnis zurückgibtIssueTokens
.