Powershell 如何识别最近过期的密码?
为了计算用户密码何时到期,我一直在使用下面的一行代码Powershell 如何识别最近过期的密码?,powershell,datetime,active-directory,Powershell,Datetime,Active Directory,为了计算用户密码何时到期,我一直在使用下面的一行代码 $Expiration = (([datetime]::FromFileTime((Get-ADUser –Identity 'MyTestUser' -Properties "msDS-UserPasswordExpiryTimeComputed")."msDS-UserPasswordExpiryTimeComputed"))-(Get-Date)).Days 问题是,当我每晚运行这个程序时,一些最近过期的密码给出的结果是0,尽管它实际
$Expiration = (([datetime]::FromFileTime((Get-ADUser –Identity 'MyTestUser' -Properties "msDS-UserPasswordExpiryTimeComputed")."msDS-UserPasswordExpiryTimeComputed"))-(Get-Date)).Days
问题是,当我每晚运行这个程序时,一些最近过期的密码给出的结果是0,尽管它实际上是一个四舍五入的负数。我的问题是,我能得到一个更详细的答案,这样我才能准确地做到这一点吗?我需要能够在一个if语句中比较结果,因为我想确定用户密码是否在周末过期等。。。这样我才能通知他们
我还有其他的一切,只有查询细节。假设代码按照您希望的方式工作,那么您将根据
.Days
限制自己的工作。该值不是四舍五入的,只是报告了完整的天数。对象还具有其他属性
相反,我建议从
TotalHours
开始工作,并添加一些同样适用于负值的逻辑。类似于$Expiration-gt-24-和$Expiration-lt 72
。应表示在过去24小时内或未来3天内过期 总小时数正是我所需要的