我是组织的开发人员,但我的任务是在Active Directory的OU中重置10k电子邮件用户的密码。我获得了适当的权限,然后发送了以下TechNet文章,但是我不确定该在哪里运行或它的工作方式。如果这个问题太含糊,我深表歉意,但是我不确定还有什么地方可以问到(我会问我所在组织的系统管理员,但需要一段时间才能得到答复)。谁能给我一个这个cmdlet的确切功能以及如何执行此命令的摘要?
我是组织的开发人员,但我的任务是在Active Directory的OU中重置10k电子邮件用户的密码。我获得了适当的权限,然后发送了以下TechNet文章,但是我不确定该在哪里运行或它的工作方式。如果这个问题太含糊,我深表歉意,但是我不确定还有什么地方可以问到(我会问我所在组织的系统管理员,但需要一段时间才能得到答复)。谁能给我一个这个cmdlet的确切功能以及如何执行此命令的摘要?
Answers:
比这容易得多。安装(取决于您的工作站操作系统的风格)远程服务器管理工具,以便获得AD DS工具。不要忘记在控制面板中进入Windows功能以启用正确的工具集。
完成此操作后,以下命令将达到您想要的结果:
DSQUERY user "OU=myOU,OU=myUsers,DC=myDomain,DC=loc" -limit 0 | DSMOD user -pwd <insert new password here>
〜将“ OU = myOU,OU = myUsers,DC = myDomain,DC = loc”替换为包含要更改用户的OU的专有名称
CN=Joe Bloggs,OU=Sales,OU=Users,DC=corp,DC=acme-widgets,DC=local
我只想把这个扔出去,说这是一个可怕的主意。如果需要更改10K用户密码,则批量重置不属于该过程的一部分。充其量,只要在用户下次登录时强制进行更改,就可以防止您打开巨大的安全漏洞。
这是要添加到组合中的PowerShell变体。从Windows Powershell Active Directory模块中运行它。请注意,密码必须满足域策略指定的任何要求(长度,复杂性等)。
您需要更改的是-SearchBase
参数和-NewPassword
参数。
使用Import-Module ActiveDirectory
活动目录模块添加到默认的PowerShell。
Get-ADUser -Filter * -SearchScope Subtree -SearchBase "OU=Department,OU=Users,DC=corp,DC=acme-widgets,DC=local" | Set-ADAccountPassword -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "New Password Here" -Force)
要在运行上面的命令之前查看这将影响哪些用户,请发出此命令以提供受影响帐户的列表。
Get-ADUser -Filter * -SearchScope Subtree -SearchBase "OU=Reset Pwd 2,OU=Reset PWD 1,DC=corp,DC=acme-widgets,DC=local" | Ft Name