如何使用VB.NET / C远程更改本地用户帐户密码?
我查看了DirectoryEntry类,知道如何将用户添加到组,但无法弄清楚如何更改(本地)密码。
答案 0 :(得分:3)
使用.net 3.5:
PrincipalContext context = new PrincipalContext(ContextType.Domain);
UserPrincipal user = UserPrincipal.FindByIdentity(context, "user");
用户可以更改自己的密码:
user.ChangePassword("old", "new");
或者,如果您以AD管理员身份运行,则可以重置它:
user.SetPassword("1234567");
答案 1 :(得分:2)
是,
这可能适用于.net 3.5及更高版本,但它需要启用并运行服务器服务(即文件共享)。如果不是???
我只想从VB.Net程序集的核心(它就像一个魅力BTW)中选择好的旧的,可爱的,完美的和保证的ADSI语法......例如:
Dim uName as string = "trgtUser"
Dim uPass as string = "newPass"
Dim user = GetObject("WinNT://./" & uName & ",user")
user.SetPassword(uPass)
这就是在本地机器上设置密码!!
玩得开心;)