csv 如何通过Powershell检查用户下次登录时必须更改密码标志

mrzz3bfm  于 2022-12-15  发布在  Shell
关注(0)|答案(2)|浏览(110)

我一直在报告设置了"用户必须在下次登录时更改密码“标志的所有用户帐户,我的问题是:如何在CSV输出中设置为user must change password at next logon而不是1/1/1601 2:00:00 AM

Get-ADUser -filter {Enabled -eq $True -and PasswordNeverExpires -eq $False} –Properties "DisplayName", "msDS-UserPasswordExpiryTimeComputed", "Title", "manager", "department", "employeeid"  | Select-Object -Property "Displayname",@{Name="ExpiryDate";Expression={[datetime]::FromFileTime($_."msDS-UserPasswordExpiryTimeComputed")}},"Title",@{n=”Manager Name”;e={(Get-ADuser -identity $_.Manager -properties displayname).DisplayName}},"Department","employeeid" | sort-object -property ExpiryDate | Export-Csv -Path "c:\export\expirydatenew.csv" -NoTypeInformation -Encoding UTF8
agyaoht7

agyaoht71#

select中的计算属性允许在其表达式中使用真实的的逻辑,因此您应该能够添加

@{Name="User must change password";Expression={if($_.pwdLastSet -eq 0){"true"} else {"false"}}}

到您的选择对象
此外,还需要将“pwdLastSet”添加到使用Get-ADUser查询的属性中

llycmphe

llycmphe2#

没有逻辑问题!只是作为补充...您可以使用以下任一项:带有($.pwdLastSet -eq 0)检查的pwdLastSet或带有($.PasswordLastSet -eq $null)检查的PasswordLastSet属性。必须先使用Get-ADUser将这两个属性分别添加到查询的属性中。

相关问题