使用WMI更改远程计算机上的用户密码
本文关键字:用户 密码 计算机 WMI 使用 | 更新日期: 2023-09-27 18:18:07
是否有一种方法可以使用WMI在远程计算机上更改用户密码?我找不到任何相关的资源
我只是想补充一下,我们没有使用活动目录,我需要用c#写我的代码。
好吧,这些都是VB脚本的例子,但它们应该是可翻译的:
如何更改OU中所有计算机的本地管理员密码?
Set objOU = GetObject("LDAP://OU=Finance, DC=fabrikam, DC=com")
objOU.Filter = Array("Computer")
For Each objItem in objOU
strComputer = objItem.CN
Set objUser = GetObject("WinNT://" & strComputer & "/Administrator")
objUser.SetPassword("i5A2sj*!")
Next
第一部分是基于AD的,但只是用于查找域中的所有机器。第二部分(执行实际的远程密码重置)根本不依赖于AD。
它基本上绑定到WinNT://<ComputeName>/<UserName>
,然后调用SetPassword()
。
关于更改本地管理帐户密码的其他SO问题已经在c#中出现了:
public static void ResetPassword(string computerName, string username, string newPassword) {
DirectoryEntry directoryEntry = new DirectoryEntry(string.Format("WinNT://{0}/{1}", computerName, username));
directoryEntry.Invoke("SetPassword", newPassword);
}