Passwörter, Passwortwiederherstellung und Passwortrichtlinien - Amazon Cognito

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.

Passwörter, Passwortwiederherstellung und Passwortrichtlinien

Allen Benutzern, die sich bei einem Benutzerpool anmelden, auch Verbundbenutzern, sind ihren Benutzerprofilen Kennwörter zugewiesen. Lokale Benutzer und verknüpfte Benutzer müssen bei der Anmeldung ein Passwort angeben. Verbundbenutzer verwenden keine Benutzerpool-Passwörter, sondern melden sich mit ihrem Identity Provider (IdP) an. Sie können Benutzern gestatten, ihre eigenen Passwörter zurückzusetzen, Passwörter als Administrator zurückzusetzen oder zu ändern, und Richtlinien für die Komplexität und den Verlauf von Kennwörtern festlegen.

Amazon Cognito speichert Benutzerkennwörter nicht im Klartext. Stattdessen speichert es einen Hash der Passwörter jedes Benutzers mit einem benutzerspezifischen Salt. Aus diesem Grund können Sie keine vorhandenen Passwörter aus den Benutzerprofilen in Ihren Benutzerpools abrufen. Es hat sich bewährt, Benutzerkennwörter im Klartext-Format nirgends zu speichern. Führen Sie Kennwortzurücksetzungen durch, wenn Benutzer ihre Passwörter vergessen haben.

Passwort zurücksetzen und wiederherstellen

Benutzer vergessen ihre Passwörter. Möglicherweise möchten Sie, dass sie ihr Passwort selbst zurücksetzen können, oder Sie möchten verlangen, dass ein Administrator ihr Passwort für sie zurücksetzt. Amazon Cognito Cognito-Benutzerpools bieten Optionen für beide Modelle. Dieser Teil des Handbuchs behandelt die Benutzerpool-Einstellungen und die API Vorgänge zum Zurücksetzen des Kennworts.

Der ForgotPasswordAPIVorgang und die Option für die gehostete Benutzeroberfläche Haben Sie Ihr Passwort vergessen? Senden Sie Benutzern einen Code, der ihnen die Möglichkeit gibt, ein neues Passwort festzulegen, wenn sie bestätigen, dass sie den richtigen Code haben ConfirmForgotPassword. Dies ist das Self-Service-Modell zur Kennwortwiederherstellung.

Bei den AdminResetUserPasswordAPIVorgängen AdminSetUserPasswordund handelt es sich um vom Administrator initiierte Methoden zum Zurücksetzen von Kennwörtern. AdminSetUserPasswordlegt ein temporäres oder permanentes Passwort fest und AdminResetUserPassword sendet Benutzern auf dieselbe Weise einen Code zum Zurücksetzen des Passworts wie. ForgotPassword

Der AccountRecoverySetting Parameter ist der Benutzerpoolparameter, der die Methoden festlegt, mit denen Benutzer ihr Passwort wiederherstellen können, wenn sie den aufrufen. ForgotPasswordAPI ForgotPasswordsendet einen Wiederherstellungscode an eine verifizierte E-Mail-Adresse oder eine verifizierte Telefonnummer. Der Wiederherstellungscode ist eine Stunde lang gültig. Wenn Sie eine AccountRecoverySetting für Ihren Benutzerpool angeben, wählt Amazon Cognito das Code-Bereitstellungsziel basierend auf der von Ihnen festgelegten Priorität aus.

Wenn Sie dies definieren AccountRecoverySetting und ein Benutzer SMS MFA konfiguriert hat, SMS kann es nicht als Mechanismus zur Kontowiederherstellung verwendet werden. Die Priorität für diese Einstellung wird bestimmt. Dabei hat 1 die höchste Priorität. Cognito sendet eine Verifizierung nur an eine der angegebenen Methoden.

Beispielsweise ist admin_only ein Wert, den der Administrator verwendet, wenn er nicht möchte, dass der Benutzer sein Konto selbst wiederherstellen kann. Der Benutzer müsste sich stattdessen an den Administrator wenden, damit dieser sein Konto zurücksetzt. Sie können admin_only nicht mit einem anderen Mechanismus für die Kontowiederherstellung verwenden.

Wenn Sie AccountRecoverySetting nicht angeben, verwendet Amazon Cognito den älteren Mechanismus, um die Methode für die Passwortwiederherstellung zu ermitteln. In diesem Fall verwendet Cognito zuerst eine verifizierte Telefonnummer. Wenn die verifizierte Telefonnummer für den Benutzer nicht gefunden wird, verwendet Cognito als Nächstes eine verifizierte E-Mail-Adresse.

Die bevorzugte MFA Methode eines Benutzers beeinflusst die Methoden, mit denen er sein Passwort wiederherstellen kann. Benutzer, deren bevorzugte E-Mail-Nachricht MFA ist, können keinen Code zum Zurücksetzen des Passworts per E-Mail erhalten. Benutzer, deren bevorzugte SMS E-Mail-Nachricht MFA ist, können keinen Code zum Zurücksetzen des Passworts von erhalten. SMS

Ihre Einstellungen zur Kennwortwiederherstellung müssen eine alternative Option bieten, wenn Benutzer nicht für Ihre bevorzugte Methode zum Zurücksetzen des Passworts in Frage kommen. Beispielsweise könnten Ihre Wiederherstellungsmechanismen E-Mail als erste Priorität einstufen und E-Mail MFA könnte eine Option in Ihrem Benutzerpool sein. Fügen Sie in diesem Fall SMS -message account recovery als zweite Option hinzu oder verwenden Sie administrative API Operationen, um die Passwörter für diese Benutzer zurückzusetzen.

Weitere Informationen zu AccountRecoverySetting finden Sie unter CreateUserPoolund UpdateUserPoolin der Amazon Cognito Identity API Provider-Referenz.

Verhalten bei „Passwort vergessen“

In einer bestimmten Stunde erlauben wir einem Benutzer zwischen 5 und 20 Versuche, im Rahmen von „Passwort vergessen“ und Aktionen einen Code zum Zurücksetzen des Passworts anzufordern oder einzugeben. confirm-forgot-password Der genaue Wert hängt von den Risikoparametern ab, die den Anforderungen zugeordnet sind. Bitte beachten Sie, dass sich dieses Verhalten ändert.

Hinzufügen von Benutzerpool-Passwortanforderungen

Starke, komplexe Passwörter sind eine bewährte Sicherheitsmethode für Ihren Benutzerpool. Insbesondere in Anwendungen, die offen für das Internet sind, können schwache Passwörter dazu führen, dass die Anmeldeinformationen Ihrer Benutzer an Systeme weitergegeben werden, die Passwörter erraten und versuchen, auf Ihre Daten zuzugreifen. Je komplexer ein Passwort ist, desto schwieriger ist es, es zu erraten. Amazon Cognito bietet zusätzliche Tools für sicherheitsbewusste Administratoren, wie erweiterte Sicherheitsfunktionen und AWS WAF Web ACLs, aber Ihre Passwortrichtlinie ist ein zentrales Element der Sicherheit Ihres Benutzerverzeichnisses.

Passwörter für lokale Benutzer in Amazon-Cognito-Benutzerpools laufen nicht automatisch ab. Es hat sich bewährt, Uhrzeit, Datum und Metadaten für das Zurücksetzen von Benutzerkennwörtern in einem externen System zu protokollieren. Mit einem externen Protokoll zum Passwortalter kann Ihre Anwendung oder ein Lambda-Trigger das Passwortalter eines Benutzers nachschlagen und nach einem bestimmten Zeitraum einen Reset erfordern.

Sie können Ihren Benutzerpool so konfigurieren, dass eine Mindestkomplexität des Kennworts erforderlich ist, die Ihren Sicherheitsstandards entspricht. Komplexe Passwörter haben eine Mindestlänge von mindestens acht Zeichen. Sie enthalten auch eine Mischung aus Großbuchstaben, Zahlen und Sonderzeichen.

Mit den erweiterten Sicherheitsfunktionen können Sie auch eine Richtlinie für die Wiederverwendung von Passwörtern festlegen. Sie können verhindern, dass ein Benutzer sein Passwort auf ein neues Passwort zurücksetzt, das seinem aktuellen Passwort oder einem von bis zu 23 zusätzlichen vorherigen Passwörtern entspricht, also insgesamt maximal 24.

So richten Sie eine Benutzerpool-Passwortrichtlinie ein
  1. Erstellen Sie einen Benutzerpool und navigieren Sie zum Schritt Konfigurieren der Sicherheitsanforderungen oder greifen Sie auf einen vorhandenen Benutzerpool zu und navigieren Sie zur Registerkarte Anmeldeerfahrung.

  2. Navigieren Sie zu Passwortrichtlinie.

  3. Wählen Sie einen Passwortrichtlinienmodus aus. Cognito-Standardwerte konfiguriert Ihren Benutzerpool mit den empfohlenen Mindesteinstellungen. Sie können auch eine benutzerdefinierte Passwortrichtlinie wählen.

  4. Stellen Sie eine Mindestpasswortlänge ein. Alle Benutzer müssen sich mit einem Passwort registrieren oder erstellt werden, dessen Länge größer oder gleich diesem Wert ist. Sie können diesen Mindestwert bis 99 festlegen, aber Ihre Benutzer können Passwörter mit bis zu 256 Zeichen einrichten.

  5. Konfigurieren Sie die Regeln zur Passwortkomplexität unter Passwortanforderungen. Wählen Sie die Zeichentypen – Zahlen, Sonderzeichen, Groß- und Kleinbuchstaben – aus, von denen mindestens einer in jedem Benutzerpasswort verwendet werden muss.

    Kennwörter können mindestens eines der folgenden Zeichen enthalten. Nachdem Amazon Cognito überprüft hat, dass Passwörter die mindestens erforderlichen Zeichen enthalten, können die Passwörter Ihrer Benutzer zusätzliche Zeichen beliebigen Typs bis zur maximalen Passwortlänge enthalten.

    • Lateinische Groß- und Kleinbuchstaben

    • Zahlen

    • Die folgenden Sonderzeichen.

      ^ $ * . [ ] { } ( ) ? " ! @ # % & / \ , > < ' : ; | _ ~ ` = + -
    • Nicht am Anfang oder Ende stehende Leerzeichen.

  6. Legen Sie einen Wert für Von Administratoren festgelegte temporäre Passwörter laufen ab in fest. Nach Ablauf dieses Zeitraums kann sich ein neuer Benutzer, den Sie in der Amazon-Cognito-Konsole oder mit AdminCreateUser erstellt haben, nicht anmelden und kein neues Passwort festlegen. Nachdem er sich mit seinem temporären Passwort angemeldet hat, laufen seine Benutzerkonten nie ab. Um die Passwortdauer in den Amazon Cognito Cognito-Benutzerpools zu aktualisierenAPI, legen Sie TemporaryPasswordValidityDays in Ihrer CreateUserPoolUpdateUserPoolAPIOR-Anfrage einen Wert für fest.

  7. Legen Sie einen Wert für Verwendung früherer Passwörter verhindern fest, falls verfügbar. Um diese Funktion zu verwenden, aktivieren Sie erweiterte Sicherheitsfunktionen in Ihrem Benutzerpool. Der Wert dieses Parameters gibt die Anzahl der vorherigen Passwörter an, mit denen ein neues Passwort nicht übereinstimmt, wenn ein Benutzer sein Passwort zurücksetzt.

Gehen Sie wie folgt vor, um den Zugriff für ein abgelaufenes Benutzerkonto zurückzusetzen:

  • Löschen Sie das Benutzerprofil und erstellen Sie es neu.

  • Legen Sie in einer AdminSetUserPasswordAPIAnfrage ein neues permanentes Passwort fest.

  • Generieren Sie in einer AdminResetUserPasswordAPIAnfrage einen neuen Bestätigungscode.