Was ein MFA Reset in Microsoft Entra ID tatsächlich bewirkt
Ein MFA Reset ist der Moment, in dem ein Administrator die Methoden der Multifaktor-Authentifizierung (MFA) eines Benutzerkontos löscht, damit die Person eine neue registrieren kann. In Microsoft Entra ID, früher Azure Active Directory, heißt die Schaltfläche Erneute MFA-Registrierung anfordern (Require re-register MFA), und der Leitfaden zu Authentifizierungsmethoden auf Microsoft Learn beschreibt, was sie anfasst. Sie deaktiviert Hardware-OATH-Token (OATH steht für Initiative for Open Authentication) und löscht Telefonnummern, Microsoft-Authenticator-Apps und Software-OATH-Token. Bei der nächsten Anmeldung richtet der User eine neue Methode ein. Eine zweite Schaltfläche, Sitzungen widerrufen, macht die Refresh-Token ungültig, sodass sich jede offene Sitzung neu anmelden muss.
Die Anfrage hinter dieser Schaltfläche ist eines der häufigsten Helpdesk-Tickets, ausgelöst durch ein neues, verlorenes oder zurückgesetztes Handy. Jede ist eine Zwei-Minuten-Aufgabe, die auf jemanden mit der richtigen Rolle wartet, es sei denn, eine Self-Service-Schicht wie das au2mator Self-Service Portal lässt den Helpdesk sie selbst starten. Dieselben zwei Minuten sind der liebste Einstiegspunkt von Angreifern, die anrufen und sich als der User ausgeben. Deshalb prüft ein guter MFA-Reset-Prozess zuerst die Identität und setzt erst danach zurück.
Zwei Details zählen, bevor du automatisierst. Eine Telefonnummer, die die Standard-MFA-Methode des Users ist, lässt sich nicht löschen, solange sie Standard ist, wie die Graph-Referenz für Telefonmethoden anmerkt. Und ein Reset meldet niemanden ab, ein bereits eingeloggter Angreifer behält seine Sitzung also, bis du sie widerrufst. In au2mator stecken beide Schritte in einem Request.
Warum MFA Resets immer noch bei einem Administrator landen
Der erste Grund ist das Berechtigungsmodell. Die Methoden eines anderen Users zurückzusetzen erfordert die Rolle Authentication Administrator, bei Administratoren den Privileged Authentication Administrator, so die Referenz der integrierten Microsoft-Entra-Rollen. Beide sind privilegierte Rollen, und die erste bringt weit mehr mit als MFA. Ein Authentication Administrator kann jede Authentifizierungsmethode inklusive Passwort für Nicht-Administratoren setzen oder zurücksetzen, eine Neuregistrierung erzwingen, Benutzer löschen und deaktivieren, einen User Principal Name ändern und alle Refresh-Token ungültig machen. Helpdesk Administrator, die Rolle, die die meisten First-Level-Teams haben, setzt Passwörter zurück, darf MFA-Methoden aber nicht anfassen.
Entweder bekommt der ganze Helpdesk eine privilegierte Rolle für eine Routineaufgabe, oder jeder MFA Reset wird zum Ticket für die wenigen Leute, die sie haben. Verwaltungseinheiten (Administrative Units) schränken die User ein, auf die ein Authentication Administrator wirken darf, aber nicht die Aktionen, ein eingeschränkter Agent kann also weiterhin jedes Konto in dieser Einheit löschen oder deaktivieren.
Der zweite Grund ist das Risiko. Das Advisory AA23-320A zu Scattered Spider der US-Behörde Cybersecurity and Infrastructure Security Agency (CISA) beschreibt, wie die Gruppe IT-Helpdesk-Mitarbeiter per Anruf dazu brachte, Passwörter und MFA-Token zurückzusetzen. Deshalb gehört der Reset in einen Prozess mit verpflichtender Identitätsprüfung, Freigabe-Nachweis und Ausführungsprotokoll, nicht in eine Konsole, in der ein einziger Klick alles erledigt.
Vier Wege, MFA Resets für den Helpdesk zu lösen
| Ansatz | Wer hält die Entra-Rolle | Identitätsprüfung und Freigabe | Worauf du achten musst |
|---|---|---|---|
| Admin Center, Reset durch einen Administrator | Zwei oder drei Administratoren mit Authentication Administrator | Was der Admin gerade zu fragen vergisst oder nicht | Jeder Reset ist ein wartendes Ticket, kein Prüfnachweis |
| Authentication Administrator für den Helpdesk, optional auf eine Verwaltungseinheit eingeschränkt | Jeder Helpdesk-Agent | Checkliste im Ticket, wenn sie befolgt wird | Privilegierte Rolle für eine Routineaufgabe, Agents können Konten im Scope auch löschen und deaktivieren |
| Dein Graph-Script plus das au2mator Self-Service Portal | Niemand. Ein Service Account hält die Graph-Berechtigungen, auf den drei Engines, die au2mator anbindet | Prüfung ist ein Pflichtfeld im Formular, Freigabe pro Service, ein Audit-Eintrag pro Reset | Script und Prüfregel schreibst du weiterhin selbst |
| Temporary Access Pass und Self-Recovery über die Sicherheitsinfo | Weiterhin ein Authentication Administrator, der den Pass erstellt | Hängt davon ab, wie der Pass übergeben wird | Verkürzt das Fenster nach dem Reset, beseitigt das Ticket nicht |
Die dritte Zeile ist die einzige, in der der Helpdesk keine Entra-Rolle hält, die Identitätsprüfung erzwungen wird und Request, Freigabe und Ausführung ein einziger Datensatz sind. Das Script, das die Arbeit auf PowerShell, Azure Automation oder System Center Orchestrator erledigt, ist dasselbe, das ein Administrator heute von Hand ausführt. Die vierte Zeile ist eine Ergänzung, wie der letzte Abschnitt zeigt.
Die PowerShell hinter einem MFA Reset
Jeder MFA Reset ist eine Folge von Microsoft-Graph-Aufrufen, und das Microsoft Graph PowerShell Software Development Kit (SDK) verpackt sie in Cmdlets. Get-MgUserAuthenticationMethod listet, was ein User registriert hat, und jeder Methodentyp hat sein eigenes Remove-Cmdlet. Die Graph-Referenz zum Löschen einer Authenticator-Methode nennt UserAuthenticationMethod.ReadWrite.All als Application Permission mit den geringsten Rechten für ein unbeaufsichtigtes Script. Der Service Account braucht zusätzlich User.Read.All für den User-Lookup und User.RevokeSessions.All für Revoke-MgUserSignInSession.
param([string]$UserPrincipalName, [string]$TicketId, [string]$IdentityVerified)
$ErrorActionPreference = 'Stop'
# Unbeaufsichtigt auf deiner Engine. Managed Identity auf Azure Automation, oder ein Zertifikat
# fuer einen Service Account auf PowerShell oder Orchestrator (-ClientId -TenantId -CertificateThumbprint)
Connect-MgGraph -Identity -NoWelcome
$user = Get-MgUser -UserId $UserPrincipalName -Property Id, AccountEnabled
if (-not $user.AccountEnabled) { throw "Konto ist deaktiviert, kein Reset durchgefuehrt" }
if ($IdentityVerified -ne 'True') { throw "Identitaetspruefung vom Requester nicht bestaetigt" }
$removed = 0; $skipped = @()
foreach ($m in Get-MgUserAuthenticationMethod -UserId $user.Id) {
try {
switch ($m.AdditionalProperties['@odata.type']) {
'#microsoft.graph.microsoftAuthenticatorAuthenticationMethod' {
Remove-MgUserAuthenticationMicrosoftAuthenticatorMethod -UserId $user.Id -MicrosoftAuthenticatorAuthenticationMethodId $m.Id; $removed++ }
'#microsoft.graph.phoneAuthenticationMethod' {
Remove-MgUserAuthenticationPhoneMethod -UserId $user.Id -PhoneAuthenticationMethodId $m.Id; $removed++ }
'#microsoft.graph.softwareOathAuthenticationMethod' {
Remove-MgUserAuthenticationSoftwareOathMethod -UserId $user.Id -SoftwareOathAuthenticationMethodId $m.Id; $removed++ }
}
} catch { $skipped += "$($m.Id) ($($_.Exception.Message))" } # z. B. die Standard-Telefonmethode
}
Revoke-MgUserSignInSession -UserId $user.Id | Out-Null
try {
$tap = (New-MgUserAuthenticationTemporaryAccessPassMethod -UserId $user.Id -BodyParameter @{ lifetimeInMinutes = 60; isUsableOnce = $true }).TemporaryAccessPass
} catch { $tap = "nicht erstellt ($($_.Exception.Message))" }
$flag = if ($skipped.Count -gt 0) { "ACHTUNG, $($skipped.Count) Methode(n) noch aktiv. " } else { "" }
"$($flag)Ticket $TicketId, $UserPrincipalName, $removed Methoden entfernt, Sitzungen beendet, TAP $tap"
Das Script ist bewusst eng gefasst. Es entfernt die Methoden, die ein Handy halten kann, und spiegelt damit die Löschungen der Admin-Center-Schaltfläche (die zusätzlich Hardware-OATH-Token deaktiviert), lässt aber FIDO2-Sicherheitsschlüssel (Fast Identity Online) und Windows Hello for Business unberührt, weil ein verlorenes Handy kein Grund ist, einen Sicherheitsschlüssel zu zerstören. Es läuft nicht ohne bestätigte Identitätsprüfung, widerruft die Sitzungen auch dann, wenn eine Löschung fehlschlägt, erstellt den Einmal-Temporary-Access-Pass, den der nächste Abschnitt erklärt, und liefert eine Zeile, die ein Request-Protokoll speichern kann. Der Fall der Standardmethode aus dem ersten Abschnitt landet in der Liste der übersprungenen Methoden, statt den Lauf abzubrechen, und die Ergebniszeile beginnt dann mit ACHTUNG, weil eine Telefonmethode, die noch Standard ist, einen Fehler liefert und ein Reset, der die alte Nummer aktiv lässt, zurück zum Agent muss.
Wie au2mator den Helpdesk MFA zurücksetzen lässt, ohne die Rolle Authentication Administrator
au2mator ist ein Self-Service-Portal vor den Scripts auf deiner Engine. Der Agent wählt einen Service und füllt ein Formular aus, ein Approver bestätigt, wenn deine Richtlinie das vorsieht, und ein Service Account führt das Script aus. Der Agent hält nie eine Entra-Rolle, das Script bleibt unverändert.
au2mator bringt keinen eigenen Entra-Connector mit. Es liefert fertige PowerShell-Scripts, mit denen du starten kannst, oder du bindest das Script an, das du schon hast. Deine Automatisierung bekommt eine Eingangstür mit verpflichtender Identitätsprüfung, einer Freigabe und einem Protokoll.
So sieht ein MFA-Reset-Service in au2mator aus
Der Service ist das Reset-Script aus dem vorherigen Abschnitt, registriert auf der Engine, auf der es bereits läuft. Das Formular zeigt nur, was der Agent entscheiden soll, typischerweise einen User-Lookup aus dem Verzeichnis, die Ticketnummer und ein Pflichtfeld für die Prüfmethode, etwa einen Rückruf bei der Führungskraft oder einen Videocall. Berechtigungen entscheiden, wer den Service sieht, das First-Level-Team sieht also MFA zurücksetzen für Standard-User, und nur das Security-Team sieht einen zweiten Service für Führungskräfte. Die Freigabe wird pro Service festgelegt, keine für einen Standard-User, die Führungskraft für ein VIP-Konto, die Security-Gruppe für ein privilegiertes Konto, wobei ein Mitglied oder ein definierter Anteil der Gruppe zustimmen muss. Für die Ausführung startet au2mator das Script über die API deiner Engine, und das Script meldet sich mit dem Service Account oder der Managed Identity an, die die Graph-Berechtigungen hält. Der Audit-Eintrag hält die ganze Kette vom Request bis zum Script-Ergebnis fest, und dieses Ergebnis kann an dein Ticketsystem zurückgemeldet werden. Wenn dein Helpdesk Passwort-Resets schon als Services betreibt, wie in unserem Artikel zur Active Directory Delegation, ist der MFA Reset der nächste.
Identitätsprüfung, Temporary Access Pass und der Recovery-Pfad nach dem Reset
Das fehlende Stück nach dem Reset ist der Temporary Access Pass (TAP), ein zeitlich begrenzter Code, den Microsoft im Leitfaden zum Temporary Access Pass als Weg beschreibt, passwortlose Methoden einzurichten und die Wiederherstellung nach einem verlorenen Gerät zu erleichtern. Die Standardlaufzeit ist eine Stunde, der Pass kann auf eine einmalige Nutzung begrenzt werden, ein User hält immer nur einen, und die TAP-Richtlinie muss den User vorher einschließen. Damit meldet sich der User in der Sicherheitsinfo an und registriert den neuen Authenticator oder Sicherheitsschlüssel.
In au2mator ist der Pass die letzte Zeile desselben Scripts. New-MgUserAuthenticationTemporaryAccessPassMethod erstellt ihn als Einmal-Pass, der Wert kommt als Ergebnis des Requests zurück, und der Agent liest ihn dem User auf dem Kanal vor, der für die Prüfung genutzt wurde, nie an die Nummer, die gerade angerufen hat. Einmalige Nutzung ist hier entscheidend, weil der Wert im Request-Protokoll tot ist, sobald sich der User damit angemeldet hat, und das Protokoll der einzige Ort bleiben sollte, an dem er gespeichert ist.
FAQ: MFA Reset in Microsoft Entra ID
Öffne den User im Microsoft Entra Admin Center, wähle Authentifizierungsmethoden und dann Erneute MFA-Registrierung anfordern. Das deaktiviert Hardware-OATH-Token, löscht Telefon-, Authenticator- und Software-OATH-Methoden, und der User registriert bei der nächsten Anmeldung eine neue Methode. Du brauchst mindestens die Rolle Authentication Administrator.
Authentication Administrator für Nicht-Administratoren und Privileged Authentication Administrator für alle User inklusive Administratoren. Beide sind privilegierte Rollen, und die erste kann außerdem Passwörter zurücksetzen, Benutzer löschen und deaktivieren und einen User Principal Name ändern, sie dem ganzen Helpdesk zu geben ist also eine große Entscheidung. Helpdesk Administrator kann Passwörter zurücksetzen, aber keine MFA-Methoden.
Nicht im Admin Center, weil die Reset-Aktionen an Authentication Administrator gebunden sind. Die Alternative ist eine Request-Schicht wie das au2mator Self-Service Portal. Der Agent füllt ein Formular mit User, Ticket und Prüfmethode aus, ein Approver bestätigt bei Bedarf, und ein Service Account führt dein unverändertes Script auf PowerShell, Azure Automation oder System Center Orchestrator aus.
Liste die Methoden des Users mit Get-MgUserAuthenticationMethod, rufe für jede Authenticator-, Telefon- und Software-OATH-Methode das passende Remove-Cmdlet auf, dann Revoke-MgUserSignInSession. Das Konto, das das Script ausführt, braucht die Application Permissions UserAuthenticationMethod.ReadWrite.All, User.Read.All und User.RevokeSessions.All und keine Entra-Rolle. Eine Telefonmethode, die noch die Standardmethode des Users ist, lässt sich erst löschen, wenn der Standard geändert wurde.
Etwas, das der Anrufer nicht kontrollieren kann, etwa einen Rückruf bei der Führungskraft oder unter einer bereits hinterlegten Nummer, einen Videocall oder eine persönliche Ausweiskontrolle. Wissensfragen und die Nummer, die gerade angerufen hat, sind genau das, worauf Angreifer wie Scattered Spider setzen. In au2mator ist die Prüfmethode ein Pflichtfeld im Formular, ohne dokumentierte Prüfung wird kein Reset abgeschickt.
Ja, immer wenn dem User keine andere starke Methode mehr bleibt. Ein Temporary Access Pass ist ein zeitlich begrenzter Code, standardmäßig eine Stunde und optional einmalig nutzbar, mit dem sich der User in der Sicherheitsinfo anmeldet und eine neue Authenticator-App oder einen Sicherheitsschlüssel registriert. Übergib ihn auf dem Kanal, den du für die Prüfung genutzt hast, und lass ihn in au2mator vom Reset-Script erstellen.
Fazit: Ein MFA Reset ist eine Vertrauensentscheidung, also gib ihm einen Prozess statt einer Rolle
Microsoft gibt dir die Schaltfläche im Admin Center, die Graph-Cmdlets und den Temporary Access Pass. Was Microsoft offen lässt, ist die Frage, die zählt, nämlich wer die Person am Telefon geprüft hat und wer den Reset auslösen darf. Eine privilegierte Rolle für den ganzen Helpdesk beantwortet sie schlecht. Ein kleines Script setzt deine Regeln um, ein Service Account mit drei Graph-Berechtigungen führt es auf deiner Engine aus, und ein Formular davor macht die Identitätsprüfung verpflichtend und den Audit-Eintrag automatisch.
Wenn du sehen willst, wie deine MFA-Reset-Tickets zu geprüften Self-Service-Requests werden, buche ein 30-minütiges Gespräch mit Michael Seidl, Microsoft MVP und Gründer von au2mator, und bring den Reset mit, der dir am meisten Sorgen gemacht hat.