C#修改AD使用者的密碼
/// <summary>
/// 修改AD 密碼
/// </summary>
/// <param name="Domain">網域</param>
/// <param name="adminName">最高權限</param>
/// <param name="UserAccount">要修改的帳號</param>
/// <param name="adminPass">最高權限密碼</param>
/// <param name="UserNewPassWord">欲修改的帳號新的密碼</param>
/// <param name="secondConfirem">欲修改的帳號新的密碼 第二次確認</param>
/// <returns></returns>
private static string UpdateADAccount(string Domain, string adminName, string UserAccount, string adminPass, string UserNewPassWord, string secondConfirem)
{
string answer = string.Empty;
if (UserNewPassWord == secondConfirem)
{
try
{
DirectoryEntry entry = new DirectoryEntry("LDAP://" + Domain, adminName, adminPass, AuthenticationTypes.Secure);
DirectorySearcher mySearcher = new DirectorySearcher(entry);
mySearcher.Filter = ("(&(objectClass=user)(sAMAccountName=" + UserAccount + "))");
SearchResult searchResult = mySearcher.FindOne();
DirectoryEntry userEntry = searchResult.GetDirectoryEntry();
userEntry.Invoke("SetPassword", new object[] { UserNewPassWord });
answer = "完成!";
}
catch (Exception ex)
{
answer = "錯誤!!:" + ex.Message;
}
}
else
{
answer = "兩次輸入不一樣!!";
}
return answer;
}