2017-04-24 4 views
1

Ich möchte ein grundlegendes Skript für die Prüfung auf Konten mit einem Passwort zu verfallen zu schreiben.Powershell für Benutzer Passwort-Datum

Hier ist mein Skript:

$maxPasswordAges = (Get-ADDefaultDomainPasswordPolicy).MaxPasswordAge.Days 

$Today = Get-Date 

Get-AdUser -Searchbase "MyOU" -filter * - Properties PasswordExpired, AccountExpirationDate, PasswordLastset | Sort-Object PasswordlastSet 
Select-Object Name, PasswordExpired, AccountExpirationDate, PasswordlastSet 

Alles scheint in dem obigen Code in Ordnung, es viele Kontotypen in meiner OU liest. Wie kann ich eine zusätzliche Spalte hinzufügen, um das "Ablaufdatum" aufzulisten (in wie vielen Tagen wird das Passwort ablaufen)?

Vorerst muss ich eine zusätzliche Arbeit tun und diesen zusätzlichen Code ausführen:

where-object {$_.PasswordlastSet} | foreach {($_.Passwordlastset.AddDays($maxpasswordage) - $Today).Days} 

Wenn ich die beiden Skripte zusammen kombinieren, es zeigt mir nur nur „Wie viele Tage verstreichen“.

Antwort

0

Sie können Ihre beiden Skripte kombinieren, indem eine calculated property in der Select-Object Anweisung:

$maxPasswordAges = (Get-ADDefaultDomainPasswordPolicy).MaxPasswordAge.Days 
$Today = Get-Date 

Get-AdUser -Searchbase "MyOU" -filter * - Properties PasswordExpired, AccountExpirationDate, PasswordLastset | 
    Sort-Object PasswordlastSet | 
    Select-Object Name, PasswordExpired, AccountExpirationDate, PasswordlastSet, @{Name="DaysToExpire";Expression={($_.Passwordlastset.AddDays($maxpasswordage) - $Today).Days}} 
+0

Vielen Dank, es funktioniert wie ich es erwarte. –

0

Sie überprüfen haben die Eigenschaft "msDS-UserPasswordExpiryTimeComputed".

Sie können das wie folgt berechnen:

(((Get-ADUser –Identity 'TestUser' -Properties "msDS-UserPasswordExpiryTimeComputed")."msDS-UserPasswordExpiryTimeComputed")-(Get-Date).Days) 

Hinweis: Differenz des aktuellen Datums und berechnete Datum wird Ihnen, was Sie sich wünschen.

+0

Dank für den Code zu verbessern. Ich werde versuchen, es an meine Arbeit anzupassen. –

Verwandte Themen