Ich habe gegoogelt, wie gesperrte Konten aufgelistet werden, und bisher zwei Methoden gefunden, die beide nicht funktionieren ...
Gespeicherte Abfrage - (&(&(&(objectCategory=Person)(objectClass=User)(lockoutTime>=1))))
Listet eine Reihe von Konten auf, von denen viele nicht gesperrt sind. Wenn ich eine entsperre, von der ich zufällig weiß, dass sie gesperrt ist, wird sie dennoch von der Abfrage zurückgegeben.
Powershell-Befehl - Search-ADAccount -LockedOut
Tut nichts.
Also auch - mache ich etwas falsch? Oder - Gibt es eine Methode, die tatsächlich funktioniert?
Antworten:
Ich würde nicht unbedingt vertrauen
Get-ADUser -LDAPFilter "(&(objectCategory=Person)(objectClass=User)(lockoutTime>=1))" -Properties LockedOut
, da es auch für mich keine verlässlichen Ergebnisse liefert, aber ich kann derzeit auch nicht direkt mit meinem PDCe Kontakt aufnehmen. Um die besten Ergebnisse zu erzielen, sollten Sie Ihren PDC-Emulator direkt ansprechen, da er immer die aktuellsten Informationen zu Kontosperrungen in der gesamten Domäne enthält.Ich wette, dass Sie hier eine Verzögerung bei der Replikation feststellen:
Versuchen Sie also herauszufinden,
Search-ADAccount -LockedOut -Server DC-PDCE
ob Ihre Ergebnisse besser sind.Beachten Sie beim Erstellen von Abfragen um das lockoutTime-Attribut Folgendes:
Bearbeiten: Durch Reverse Engineering
Microsoft.ActiveDirectory.Management.dll
kann ich Ihnen sagen, dassSearch-ADAccount -LockedOut
, was mir ziemlich zuverlässige Ergebnisse zu liefern scheint, der folgende Code ausgeführt wird:Es
Search-ADAccount -LockedOut
sieht also so aus, als würde auch das AccountLockoutTime-Attribut betrachtet!Bearbeiten Sie noch mehr für große Gerechtigkeit: Richard Mueller, Dir. Services MVP sagt dies:
Ich kann dies folgendermaßen überprüfen:
Abschließend möchte ich auf diesen Blog-Beitrag zum Thema eingehen , in dem erklärt wird, warum sich das
lockoutTime>=1
der besten Lösung nähert, aber das ist nur ein Teil der Geschichte. Sie müssen die Liste weiter filtern, um nur die Benutzer einzuschließen, deren LockoutTime in der Vergangenheit länger als $ (Ihre Domain-Lockout-Dauer) Minuten war.quelle
userAccountControl
Bit nicht mehr gültig ist. Es hat in der Vergangenheit gut funktioniert, wenn das Gedächtnis dient. Ich frage mich, ob die Funktionalität in einer späteren Version des AD-Codes entfernt wurde. Hmm ...