Archiv der Kategorie: Active Directory

Active Directory – das Ablaufdatum eines Benutzerkontenkennworts abfragen

Für das Abfragen der kontenspezifischen Details eines Benutzerkontos gibt es bekanntlich das Search-ADAccount-Cmdlet. Damit lassen sich folgende Kontendetails abfragen:

>Ob ein Konto deaktiviert ist
>Ob ein Konto abgelaufen ist
>Ob sich der Benutzer ausgesperrt hat („locked out“), z.B. durch Mehrmalige Eingabe eines falschen Kennworts
>Ob das Kennwort abgelaufen ist
>Ob das Kennwort niemals abläuft
>Ob ein Konto innerhalb einer angegebenen Zeitspanne ablaufen wird
>Ob ein Konto innerhalb einer angegebenen Zeitspanne inaktiv war

Die letzten beiden Fragen beziehen den TimeSpan-Parameter mit ein. Es gilt die Konvention, dass die Übergabe einer Zahl als String als Tage interpretiert wird. Ansonsten wird der Parameterwert (wie in der Hilfe beschrieben) im Format 90.00:00:00 für 90 Tage übergeben.

Nicht dabei ist ein Parameter über das Abfragen des Ablaufdatums eines Kennworts. Aus gutem Grund, denn diese Eigenschaft hängt u.a. von den Kennwortrichtlinien ab und dem Umstand, dass für das Kennwort ein Ablaufdatum explizit festgelegt wurde was in der Regel nicht der Fall sein dürfte.

Die folgende Befehlsfolge gibt die Ablaufdaten sämtlicher (!) Benutzerkonto der Domäne aus, sofern ein solches existiert. Das Beispiel versteht sich in erster Linie als ein Vorschlag und ist noch nicht perfekt. Ich habe vor Jahren im PowerShell-Teamblog eine Function gefunden und sie endlich einmal selber umgesetzt. Über Kommentare und Verbesserungsvorschläge freue ich mich natürlich. Ich habe auch nicht im Internet geschaut, ob es vielleicht eine bessere Umsetzung gibt.