Einrichten eines Flows zum Erzwingen der Kennwortzurücksetzung in Azure Active Directory B2C

Bevor Sie beginnen, verwenden Sie den Auswahlpunkt Richtlinientyp wählen, um die Art der Richtlinie auszuwählen, die Sie einrichten möchten. Azure Active Directory B2C bietet zwei Methoden zum Definieren der Benutzerinteraktion mit Ihren Anwendungen: vordefinierte Benutzerflows oder vollständig konfigurierbare benutzerdefinierte Richtlinien. Die Schritte, die in diesem Artikel erforderlich sind, unterscheiden sich für jede Methode.

Übersicht

Als Administrator können Sie das Kennwort für einen Benutzer zurücksetzen, wenn der Benutzer sein Kennwort vergessen hat. Es kann auch sein, dass Sie die Kennwortzurücksetzung erzwingen möchten. In diesem Artikel wird beschrieben, wie Sie in diesen Szenarien eine Kennwortzurücksetzung erzwingen.

Wenn ein Administrator das Kennwort eines Benutzers über das Azure-Portal zurücksetzt, wird der Wert des Attributs forceChangePasswordNextSignIn auf true festgelegt. Während des Anmeldungs- und Registrierungsablaufs wird der Wert dieses Attributs überprüft. Nachdem der Benutzer die Anmeldung durchgeführt hat, muss er sein Kennwort zurücksetzen, wenn das Attribut auf true festgelegt ist. Anschließend wird der Wert des Attributs wieder auf false festgelegt.

Force password reset flow

Der Flow für die Kennwortzurücksetzung wird für lokale Konten in Azure AD B2C verwendet, bei denen für die Anmeldung eine E-Mail-Adresse oder ein Benutzername und ein Kennwort verwendet werden.

Voraussetzungen

Konfigurieren des Benutzerflows

Gehen Sie wie folgt vor, um die Einstellung Erzwungene Kennwortzurücksetzung in einem Flow für die Registrierung oder Anmeldung zu aktivieren:

  1. Melden Sie sich beim Azure-Portal an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C Mandanten zu wechseln.
  3. Suchen Sie im Azure-Portal nach Azure AD B2C, und wählen Sie diese Option dann aus.
  4. Wählen Sie Benutzerflows aus.
  5. Wählen Sie den (empfohlenen) Benutzerflow für die Registrierung/Anmeldung oder nur für die Anmeldung aus, den Sie anpassen möchten.
  6. Wählen Sie im linken Menü unter Einstellungen die Option Eigenschaften aus.
  7. Wählen Sie unter Kennwortkonfiguration die Option Erzwungene Kennwortzurücksetzung aus.
  8. Wählen Sie Speichern aus.

Testen des Benutzerflows

  1. Melden Sie sich als Benutzer- oder Kennwortadministrator beim Azure-Portal an. Weitere Informationen zu den verfügbaren Rollen finden Sie unter Zuweisen von Administratorrollen in Microsoft Entra ID.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C Mandanten zu wechseln.
  3. Suchen Sie im Azure-Portal nach Azure AD B2C, und wählen Sie diese Option dann aus.
  4. Wählen Sie Benutzer aus. Suchen Sie nach dem Benutzer, den Sie zum Testen der Kennwortzurücksetzung verwenden möchten, und wählen Sie ihn aus. Wählen Sie anschließend die Option Kennwort zurücksetzen aus.
  5. Suchen Sie im Azure-Portal nach Azure AD B2C, und wählen Sie diese Option dann aus.
  6. Wählen Sie Benutzerflows aus.
  7. Wählen Sie einen (empfohlenen) Benutzerflow für die Registrierung oder Anmeldung aus, den Sie testen möchten.
  8. Wählen Sie Benutzerflow ausführen aus.
  9. Wählen Sie für Anwendung die Webanwendung webapp1 aus, die Sie zuvor registriert haben. Als Antwort-URL sollte https://jwt.ms angezeigt werden.
  10. Wählen Sie Benutzerflow ausführen aus.
  11. Melden Sie sich mit dem Benutzerkonto an, für das Sie das Kennwort zurücksetzen.
  12. Nun müssen Sie das Kennwort für den Benutzer ändern. Ändern Sie das Kennwort, und klicken Sie auf Weiter. Das Token wird an https://jwt.ms zurückgegeben und sollte Ihnen angezeigt werden.

Konfigurieren Ihrer benutzerdefinierten Richtlinie

Holen Sie sich auf GitHub das Beispiel für die Richtlinie zur Kennwortzurücksetzung. Ersetzen Sie in jeder Datei die Zeichenfolge yourtenant durch den Namen Ihres Azure AD B2C-Mandanten. Wenn der Name des B2C-Mandanten z.B. contosob2c lautet, werden alle Instanzen von yourtenant.onmicrosoft.com zu contosob2c.onmicrosoft.com.

Hochladen und Testen der Richtlinie

  1. Melden Sie sich beim Azure-Portal an.
  2. Wenn Sie Zugriff auf mehrere Mandanten haben, wählen Sie das Symbol Einstellungen im Menü oben, um über das Menü Verzeichnisse + Abonnements zu Ihrem Azure AD B2C Mandanten zu wechseln.
  3. Wählen Sie links oben im Azure-Portal die Option Alle Dienste aus, suchen Sie nach Azure AD B2C, und wählen Sie dann diese Option aus.
  4. Wählen Sie Framework für die Identitätsfunktion aus.
  5. Wählen Sie unter Benutzerdefinierte Richtlinien die Richtlinie zum Hochladen aus.
  6. Wählen Sie die Datei TrustFrameworkExtensionsCustomForcePasswordReset.xml aus.
  7. Wählen Sie die Option Hochladen.
  8. Wiederholen Sie die Schritte 6 bis 8 für die Datei der vertrauenden Seite TrustFrameworkExtensionsCustomForcePasswordReset.xml.

Ausführen der Richtlinie

  1. Öffnen Sie die Richtlinie, die Sie hochgeladen haben: B2C_1A_TrustFrameworkExtensions_custom_ForcePasswordReset.
  2. Wählen Sie als Anwendung die Anwendung aus, die Sie vorher registriert haben. Um das Token anzuzeigen, muss als Antwort-URL der Wert https://jwt.ms angegeben werden.
  3. Wählen Sie Jetzt ausführen aus.
  4. Melden Sie sich mit dem Benutzerkonto an, für das Sie das Kennwort zurücksetzen.
  5. Nun müssen Sie das Kennwort für den Benutzer ändern. Ändern Sie das Kennwort, und klicken Sie auf Weiter. Das Token wird an https://jwt.ms zurückgegeben und sollte Ihnen angezeigt werden.

Erzwingen der Kennwortrücksetzung bei der nächsten Anmeldung

Um das Zurücksetzen des Kennworts bei der nächsten Anmeldung zu erzwingen, aktualisieren Sie das Kontokennwortprofil mithilfe des MS Graph-Vorgangs Benutzer aktualisieren. Dazu müssen Sie Ihrer Microsoft Graph-Anwendung die Rolle Benutzeradministrator zuweisen. Führen Sie die Schritte in Erteilen der Benutzeradministratorrolle aus, um Ihrer Microsoft Graph-Anwendung die Benutzeradministratorrolle zuzuweisen.

Im folgenden Beispiel wird das Attribut ForceChangePasswordNextSignIn des Kennwortprofils auf true aktualisiert, wodurch der Benutzer gezwungen wird, das Kennwort bei der nächsten Anmeldung zurückzusetzen.

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
    "passwordProfile": {
      "forceChangePasswordNextSignIn": true
    }
}

Nachdem das Kontokennwortprofil festgelegt wurde, müssen Sie auch den Flow zum Erzwingen der Kennwortzurücksetzung konfigurieren. Dies ist in diesem Artikel beschrieben.

Erzwingen einer Kennwortzurücksetzung nach 90 Tagen

Als Administrator können Sie MS Graph verwenden, um die Gültigkeitsdauer eines Benutzerkennworts auf 90 Tage festzulegen. Nach 90 Tagen wird der Wert des Attributs forceChangePasswordNextSignIn automatisch auf true festgelegt. Entfernen Sie den Wert DisablePasswordExpiration aus dem Attribut Kennwortrichtlinie des Benutzerprofils, um eine Kennwortzurücksetzung nach 90 Tagen zu erzwingen.

Im folgenden Beispiel wird die Kennwortrichtlinie auf None aktualisiert, wodurch eine Kennwortzurücksetzung nach 90 Tagen erzwungen wird:

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
  "passwordPolicies": "None"
}

Wenn Sie die hohe Kennwortkomplexität deaktiviert haben, aktualisieren Sie die Kennwortrichtlinie auf DisableStrongPassword:

Hinweis

Nachdem der Benutzer sein Kennwort zurückgesetzt hat, wird passwordPolicies wieder in DisablePasswordExpiration geändert.

PATCH https://graph.microsoft.com/v1.0/users/<user-object-ID>
Content-type: application/json

{
  "passwordPolicies": "DisableStrongPassword"
}

Nachdem eine Kennwortablaufrichtlinie festgelegt wurde, müssen Sie auch den Flow zum Erzwingen der Kennwortzurücksetzung konfigurieren. Dies ist in diesem Artikel beschrieben.

Zeitraum bis zum Ablauf des Kennworts

Standardmäßig ist festgelegt, dass das Kennwort nicht abläuft. Der Wert kann jedoch im Microsoft Graph-PowerShell-Modul mit dem Cmdlet Update-MgDomain konfiguriert werden. Mit diesem Befehl wird der Mandant aktualisiert, sodass die Kennwörter aller Benutzer*innen nach der von Ihnen konfigurierten Anzahl von Tagen ablaufen. Beispiel:

Import-Module Microsoft.Graph.Identity.DirectoryManagement

Connect-MgGraph  -Scopes 'Domain.ReadWrite.All'

$domainId = "contoso.com"
$params = @{
	passwordValidityPeriodInDays = 90
	passwordNotificationWindowInDays = 15
}

Update-MgDomain -DomainId $domainId -BodyParameter $params

Hinweis

passwordValidityPeriodInDays gibt an, wie viele Tage ein Kennwort gültig bleibt, bis es geändert werden muss. passwordNotificationWindowInDays gibt die Zeitspanne in Tagen vor dem Ablaufdatum des Kennworts an, wenn Benutzer*innen ihre erste Benachrichtigung erhalten, um anzugeben, dass ihr Kennwort bald abläuft.

Nächste Schritte

Richten Sie eine Self-Service-Kennwortzurücksetzung ein.