通过命令行解锁 Windows AD 帐户并分配*临时*密码?

通过命令行解锁 Windows AD 帐户并分配*临时*密码?

Joe Brown 正在打电话。他无法使用 Windows,因为他忘记了密码。我们可以通过 Active Directory 用户和计算机重置他的密码,但 ADUC 非常烦人。

当然,也可以通过 NET USER 解锁 Joe Brown 的帐户并将其密码重置为“33Foo$bars”:

网络用户 jbrown 33Foo$bars /domain /active:yes

不幸的是,这个命令没有设置要求他选择新密码的标志。作为开明的管理员,我们不想随时知道任何用户的永久密码。

有没有人有一个有效的命令行方法来解锁/重置需要更改密码,使用本机 Windows 工具(必要时包括 PowerShell 或 VBScript)但不需要第三方二进制文件?

背景:Windows Server 2008 域。

答案1

二进制“dsmod”(随 Win7 和 Vista 提供,XP 中也包含它们)应该可以执行您想要的操作。

dsmod 用户 UserDN -pwd $密码 -mustchpwd 是

它还能做很多事情!非常有用的工具。

除了这个工具之外,还有其他几个工具也非常有用。dsquery从命令行搜索 AD。dsget从对象中提取属性。dsadd允许创建对象(和用户!)。对于任何脚本编写者来说,绝对值得一看。

答案2

未经测试,但我以前做过类似的事情DSMod 用户

dsquery user -samid username | dsmod.exe user -pwd <Password> -mustchpwd yes -disabled no

/edited - 包括使用 dsquery 前缀的好建议,以便您查找 samid(登录)而不是 UDN。

答案3

要重置用户密码并强制更改密码:

dsmod user "CN=John Doe,CN=Users,DC=microsoft,DC=com" -pwd A1b2C3d4 -mustchpwd yes

答案4

这在我的 Win7 机器上刚刚起作用。

net user *username* *password*/domain ACTIVE:Yes /logonpasswordchg:yes

相关内容