如何批量重置 OU 中的所有用户的密码?

如何批量重置 OU 中的所有用户的密码?

我是我所在组织的一名开发人员,但我被要求重置 Active Directory 中某个 OU 中的 10k 个电子邮件用户的密码。我获得了适当的权限,然后发送了以下内容TechNet 文章,但我不确定在哪里运行它或者它究竟是如何工作的。如果这个问题太模糊,我很抱歉,但我不确定我还能在哪里问(我会问我所在组织的系统管理员,但需要一段时间才能得到答复)。有人能给我简要介绍一下这个 cmdlet 到底是做什么的以及我该如何执行它吗?

答案1

比这简单多了。安装(取决于您的工作站操作系统)远程服务器管理工​​具这样您就获得了 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 的专有名称

答案2

我只想说,这个想法太糟糕了。如果需要更改 10000 名用户的密码,则批量重置不应该成为流程的一部分。最好的情况是,只需在用户下次登录时强制更改密码,就可以防止你打开的巨大安全漏洞。

答案3

这是要添加到组合中的 PowerShell 变体。从 Windows Powershell 的 Active Directory 模块运行它。请注意,密码必须满足域策略指定的任何要求(长度、复杂性等)。

您需要更改的是-SearchBase参数和-NewPassword参数。

用于Import-Module ActiveDirectory将 Active Directory 模块添加到默认 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

答案4

我认为批量重置 10000 个密码不是一个好主意。我们可以简单地选择“下次登录时更改”选项,这将确保我们不会违反任何信息安全政策或流程。GN

相关内容