Passwort-Einstellungen mit PowerShell: Kennwort läuft nie ab, Passwort nicht erforderlich


    Tags: , , ,

    Kennwort läuft nie abDas Active Directory kennt eine ganze Reihe von Richtlinien für Kennwörter, die ein Administrator den Benutzern vorgeben kann. Manche davon sind jedoch mit Vorsicht zu genießen, beispiels­weise wenn Passwörter nie ablaufen oder wenn User gar ohne Kennwort Zugang zum System erhalten. PowerShell kann die betroffenen Konten einfach ermitteln und die entsprechenden Einstellungen ändern.

    Es ist eine allgemein übliche Praxis, Benutzer anzuhalten, ihr Kennwort in vorgegebenen Intervallen zu ändern und dabei bereits verwendete Passwörter nicht erneut zu gebrauchen. Einzelne Konten lassen sich von dieser Vorgabe einfach befreien, indem man in AD-Benutzer und -Computer die Eigenschaften eines Kontos öffnet und dort die Option Kennwort läuft nie ab aktiviert.

    Anmelden ohne Passwort nicht über GUI konfigurierbar

    Eine weitere Ausnahme von den allgemeinen Passwortregeln, die unter dem Gesichtspunkt der Sicherheit noch problematischer ist, lässt sich nicht so einfach einrichten. Es handelt sich dabei um das Recht, sich ohne Eingabe eines Passworts am System anmelden zu dürfen. Dafür muss man sich der Kommandozeile bedienen, weil das GUI-Tool diese Option nicht bietet.

    Mit Hilfe von PowerShell kann man sich recht einfach einen Überblick darüber verschaffen, welche User ihr Passwort nicht ändern müssen oder die gar keines benötigen. Das erste der beiden Anliegen kann man mit Hilfe von Get-ADUser erledigen:

    Get-ADUser -Filter 'PasswordNeverExpires -eq $TRUE' -Properties PasswordNeverExpires

    Verzichtet man auf das Argument -Properties, dann erhält man zwar ebenfalls ein korrektes Ergebnis, aber das entsprechende Attribut scheint in der Anzeige nicht auf. Möchte man die Abfrage auf eine bestimmte OU eingrenzen, dann kann man dies mit Hilfe des Parameters -SearchBase tun, also beispielsweise mit

    -SearchBase "OU=Marketing,DC=contoso,DC=com"

    Search-ADAccount statt Get-ADUser

    Eine Alternative zum Aufruf von Get-ADUser besteht in der Verwendung von Search-ADAccount:

    Search-ADAccount -PasswordNeverExpires -UsersOnly

    Auch dieses Cmdlet unterstützt den Parameter -Searchbase, um die Suche auf bestimmte Bereiche einzuschränken.

    Möchte man wissen, welche Konten kein Passwort benötigen, dann kann Search-ADAccount darauf keine Antwort geben, wohl aber Get-ADUser:

    Get-ADUser -Filter 'PasswordNotRequired -eq $TRUE' | select Name

    Problematische Einstellungen zurücksetzen

    Möchte man die Risiken beseitigen, die mit diesen Einstellungen verbunden sind, dann kann PowerShell mit Set-ADUser die entsprechenden Attribute auch zurücksetzen:

    Get-ADUser -Filter 'PasswordNeverExpires -eq $True' |
    Set-ADUser -PasswordNeverExpires $False

    In diesem Beispiel würde sämtlichen Konten in der Domäne, die bis dato kein Ablaufdatum für das Kennwort haben, ein solches wieder vorgeschrieben.

    Nach dem gleichen Muster kann man das Recht auf die Anmeldung mit einem leeren Passwort widerrufen, indem man anstatt des Parameters -PasswordNeverExpires das erforderliche PasswordNotRequired verwendet. Der Aufruf eignet sich natürlich auch, um den umgekehrten Zweck zu erfüllen, wenn man als Wert $True angibt.

    Täglich Know-how für IT-Pros mit unserem Newsletter

    Wir ver­wenden Ihre Mail-Adresse nur für den Ver­sand der News­letter.
    Es erfolgt keine per­sonen­be­zogene Auswertung.

    Bild von Wolfgang Sommergut
    Wolfgang Sommergut hat lang­jährige Erfahrung als Fach­autor, Berater und Kon­ferenz­sprecher zu ver­schie­denen Themen der IT. Da­ne­ben war er als System­ad­mi­ni­stra­tor und Con­sultant tätig.
    // Kontakt: E-Mail, XING, LinkedIn //

    Verwandte Beiträge

    Weitere Links