我刚在Active Directory中创建了计算机对象。我使用SetPassword命令为计算机对象设置密码。我们如何验证计算机对象的密码或使用该密码进行身份验证?有没有办法验证密码对该计算机有效?
答案 0 :(得分:1)
验证计算机帐户密码的方法与用户密码相同。计算机帐户还有一个用户名SamAccountName
。
我不确定如何提供示例,因为您没有指定任何编程平台,但为了它,这里是使用c#和System.DirectoryServices.AccountManagement
命名空间的示例。
string password = "securepassword";
using (PrincipalContext context = new PrincipalContext(ContextType.Domain))
using (ComputerPrincipal computer = ComputerPrincipal.FindByIdentity(context, "Temp1"))
{
computer.SetPassword(password);
Console.WriteLine(context.ValidateCredentials(computer.SamAccountName, string.Empty).ToString()); // Returns False
Console.WriteLine(context.ValidateCredentials(computer.SamAccountName, password).ToString()); //Returns True
}