Powershell Logo

Powershell: Report aller Konten ohne Passwortaging

Für ein Audit oder eine anstehende Umstrukturierung einer Domäne kann es notwendig sein alle Konten zu erfassen, bei denen das Kennwort nie abläuft (ohne Passwort-Aging).

Die Lösung ist ein Powershell-Script, das man z.B. auf einem Windows 7 Client ausführen kann.
Zunächst importiert öffnet man ein PowerShell ISE Fenster und aktiviert das Active Directory Modul mit:
Import-Module ActiveDirectory

Die Abfrage an sich sieht so aus:
Search-ADAccount –PasswordNeverExpires

Allerdings ist das Ergebnis eine stumpfe Auflistung in der PowerShell Box, die man so erst einmal nicht gut gebrauchen kann.
Besser ist es alles in eine CSV-Datei zu kopieren, die man dann in Excel importieren kann.
Search-ADAccount -PasswordNeverExpires | Select-Object Name,ObjectClass,PasswordNeverExpires | Export-Csv -Encoding UTF8 „$env:homedrive$env:homepath\Documents\users_no_password_expiration.csv“ –NoTypeInformation

Was macht die Abfrage jetzt eigentlich?
Also zunächst die Abfrage, wie wir sie oben schon angegeben hatten. Von den Ergebnissen nehmen wir jetzt Namen, Objekt-Klasse und die gewünschte Password-Eigenschaft. Darauf folgt die Ausgabe der Ergebnisse in eine CSV Datei, wobei wir UTF8 als Kodierung mitgeben. Damit sollten Umlaute kein Problem sein. Jetzt noch die Ausgabe in den Dokumentenordner des Benutzers.
Somit landet die erzeugte CSV nicht irgendwo am Rechner, sondern im Benutzerprofil des ausführenden Benutzers. Mit dem Argument “-NoTypeInformation” wird man eine Zeile los, die ansonsten bei der Abfrage ganz oben im Dokument eingefügt wird.

Print Friendly, PDF & Email

Last updated by at .

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.