使用 powershell 启用 AD 帐户
Enabling AD account using powershell
在 Active Directory 中创建的所有新用户帐户都保持禁用状态,并勾选选项 "user must change password on next login"。此帐户将保持禁用状态 7 天,并在第 8 天需要启用它。创建帐户已由另一个脚本完成,我被帐户启用部分卡住了。
如何使用 PowerShell 脚本存档启用这些帐户?如何使用所有帐户属性,如上次登录日期、帐户创建日期、帐户状态(已禁用)和选项 "user must change password on next login" 来验证并找到需要启用的新用户?
get-aduser -f {-not ( lastlogontimestamp -like "*") -and (enabled -eq $false) -and (pwdLastSet -eq 0)} |
Select-Object name,SamAccountName |
export-csv -path data.csv
这是您的操作方法,但您需要编写脚本:
检查 whenCreated
属性它有一个日期时间戳,您可以使用它来查看帐户的年龄。
如果帐户超过 7 天并且帐户被禁用,请将 userAccountControl
属性设置为启用 IE 512
,然后设置您的用户必须更改密码 属性 true
使用过滤器根据您的条件进行过滤。此代码段获取已禁用帐户的用户对象,然后过滤掉不到一周的帐户。它将它们存储在用户对象的集合中。您可以使用 $variable | $variable where { [filter] }
格式按任何用户对象 属性 进一步过滤 $userlist。过滤器可以根据需要复杂化。我喜欢在每一行放一个,这样我就可以轻松地注释掉给定的过滤器。根据需要使用过滤后的列表。
$WeekAgoDate = $(Get-Date).addDays(-7)
$userlist = get-aduser -filter { enabled -eq $false } -Properties *
$userlist = $userlist | Where { $_.created -lt $WeekAgoDate }
"$userlist.count accounts found"
$userlist | select name, samaccountname | format-table
要启用 $userlist:
$用户列表 |启用-ADAccount
在 Active Directory 中创建的所有新用户帐户都保持禁用状态,并勾选选项 "user must change password on next login"。此帐户将保持禁用状态 7 天,并在第 8 天需要启用它。创建帐户已由另一个脚本完成,我被帐户启用部分卡住了。
如何使用 PowerShell 脚本存档启用这些帐户?如何使用所有帐户属性,如上次登录日期、帐户创建日期、帐户状态(已禁用)和选项 "user must change password on next login" 来验证并找到需要启用的新用户?
get-aduser -f {-not ( lastlogontimestamp -like "*") -and (enabled -eq $false) -and (pwdLastSet -eq 0)} |
Select-Object name,SamAccountName |
export-csv -path data.csv
这是您的操作方法,但您需要编写脚本:
检查 whenCreated
属性它有一个日期时间戳,您可以使用它来查看帐户的年龄。
如果帐户超过 7 天并且帐户被禁用,请将 userAccountControl
属性设置为启用 IE 512
,然后设置您的用户必须更改密码 属性 true
使用过滤器根据您的条件进行过滤。此代码段获取已禁用帐户的用户对象,然后过滤掉不到一周的帐户。它将它们存储在用户对象的集合中。您可以使用 $variable | $variable where { [filter] }
格式按任何用户对象 属性 进一步过滤 $userlist。过滤器可以根据需要复杂化。我喜欢在每一行放一个,这样我就可以轻松地注释掉给定的过滤器。根据需要使用过滤后的列表。
$WeekAgoDate = $(Get-Date).addDays(-7)
$userlist = get-aduser -filter { enabled -eq $false } -Properties *
$userlist = $userlist | Where { $_.created -lt $WeekAgoDate }
"$userlist.count accounts found"
$userlist | select name, samaccountname | format-table
要启用 $userlist: $用户列表 |启用-ADAccount