【发布时间】:2019-02-14 07:13:00
【问题描述】:
我正在检查使用 PowerShell 重置 AD 用户密码的方法,我发现 Set-ADAccountPassword 它正在工作,但我不确定如何在我的环境中使用它。
我有一个包含许多子域的林:example.local 作为主域,x.example.local、y.example.com 和 z.example.com 作为子域。
我想要实现的是能够从位于父域中的服务器重置子域帐户的密码 现在,以下事情对我有用。
如果从驻留在子域x.example.local 中的服务器运行:
Set-ADAccountPassword -Identity "John.Doe" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)
在森林中的任何地方工作:
Set-ADAccountPassword -Identity "CN=Doe, John X.,OU=b,OU=a,DC=x,DC=example,DC=local" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)
我真正需要的是能够将 Windows 用户登录名 从服务器父域(即example.local)放入脚本中,例如,example.local,顺便说一句。 p>
Set-ADAccountPassword -Identity "CN=John.Doe,OU=b,OU=a,DC=x,DC=example,DC=local" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)
我怎样才能做到这一点?
【问题讨论】:
-
我认为您缺少核心概念。如果您有权在父域中重置密码,那么由于传递信任,您可以在所有子域中执行相同操作。现在,通过在身份中提供相同的用户名也应该可以跨子域工作。此外,您从哪个系统运行并不重要,因为最终它在同一个林中
-
您应该先使用Get-ADUser 来查找用户。
-Identity参数采用以下任何一项:DistinguishedName、GUID、SID 或 SAM 帐户名称。然后,如果您有一个用户对象,您可以将其用于Set-ADAccountPassword cmdlet。请解释John.Doe是什么。 SamAccountname 可能是用户 UPN 的一部分?
标签: powershell active-directory