Kennwortverwaltung: Ablaufzeit deaktivieren

Für einzelne User lässt sich das Attribut „Kennwörter laufen nie ab“ („PasswordNeverExpires“) setzen – was für tatsächliche benutzer kritisch ist, aber besonders praktisch ist für Benutzer, die in Software hinterlegt werden (z.B. der Scanner, der Dateien auf einer Freigabe ablegt).

Abfragen, wessen Kennwort bald abläuft

Um eine Liste von Benutzern, die ihr Kennwort bald ändern müssen, abzufragen, starten wir eine Powershell als Administrator und geben folgenden Befehl ein:

Get-ADUser -filter {Enabled -eq $True -and PasswordNeverExpires -eq $False} -Properties PasswordLastSet, msDS-UserPasswordExpiryTimeComputed

Dieser durchsucht alle AD-Benutzer nach Personen, deren Account aktiviert ist und bei denen das PasswordNeverExpires nicht gesetzt ist und listet und diese tabellarisch mitsamt der zusätzlichen Info, wann die Benutzer das Kennwort geändert haben und wann es demnach ablaufen sollte, auf.

Setzen von PasswordNeverExpires

Um das PasswordNeverExpires-Flag für den Benutzer tino.ruge zu setzen, passen wir diesen wieder in einer Powershell mit Adminrechten an:

Set-ADUser -Identity tino.ruge -PasswordNeverExpires:$true

Setzen für alle Benutzer

Um genau dieses Flag für alle Benutzer zu setzen, bei denen das Flag nicht gesetzt ist, lesen wir erst alle Benutzer aus und reichen das Ergebnis der Abfrage an den Befehl „Set-ADUser“ weiter.

Get-ADUser -filter {Enabled -eq $True -and PasswordNeverExpires -eq $False} | Set-ADUser -PasswordNeverExpires:$True

Kategorien: Active Directory, Powershell

tino-ruge.de wird tino-kuptz.de

Im Laufe des Jahres 2024 wird dieser Blog umziehen. Alle Inhalte werden 1:1 weitergeleitet, nix geht verloren. Neue Domain, alter Autor, alter Inhalt.