Фильтрация даты истечения срока действия пароля Powershell - PullRequest
1 голос
/ 19 июня 2020

Я сейчас пытаюсь вытащить CSV, который возвращает пользователей, чей пароль AD истекает в пределах диапазона дат. В настоящее время у меня есть код ниже, который извлекает всех пользователей, даты истечения срока действия и электронные письма. Было интересно, как отфильтровать это утверждение по дате, чтобы я мог знать всех пользователей через 5 дней после истечения срока действия?

get-aduser -filter * -properties "DisplayName", "msDS-UserPasswordExpiryTimeComputed" , EmailAddress, DisplayName | Select-Object -Property "Displayname", EmailAddress,@{Name="Expiration Date";Expression={[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed")}} | Export-Csv -Path c:\support\PasswordExpiration.csv -Encoding ascii -NoTypeInformation

1 Ответ

1 голос
/ 19 июня 2020

Добавьте Where-Object перед Export-Csv. Это вернет всех пользователей, срок действия которых истекает менее чем через 5 дней в будущем

Get-ADUser -Filter * -Properties "DisplayName", "msDS-UserPasswordExpiryTimeComputed" , EmailAddress, DisplayName | 
    Select-Object -Property "Displayname", EmailAddress,@{Name="Expiration Date";Expression={[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed")}} | 
    Where-Object { $_.'Expiration Date' -lt (Get-Date).AddDays(5) } |
    Export-Csv -Path c:\support\PasswordExpiration.csv -Encoding ascii -NoTypeInformation
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...