【问题标题】:Powershell password expiration date filteringPowershell密码过期日期过滤
【发布时间】:2020-06-19 10:37:02
【问题描述】:

我目前正在尝试提取一个 CSV,该 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

【问题讨论】:

    标签: powershell datefilter


    【解决方案1】:

    Export-Csv 之前添加Where-Object。这将返回所有到期日期少于未来 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
    

    【讨论】:

    • 也许添加另一个检查以获取属性PasswordNeverExpiresPasswordNotRequired 都是$false 的用户?
    猜你喜欢
    • 2016-10-07
    • 1970-01-01
    • 1970-01-01
    • 2017-03-12
    • 2020-06-18
    • 2019-11-07
    • 1970-01-01
    • 2016-05-21
    • 1970-01-01
    相关资源
    最近更新 更多