• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#修改AD账号及密码

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

在使用AD域环境搭建的账号系统修改密码的时候比较麻烦一般需要管理员在域环境去进行对用户的密码进行修改。

以下就是用来查询和修改AD域密码的方法。

 1         /// <summary>
 2         /// AD账户查询
 3         /// </summary>
 4         /// <param name="Domain"></param>
 5         /// <param name="UserAccount"></param>
 6         /// <param name="UserPassWord"></param>
 7         /// <returns></returns>
 8         private static string CheckAccount(string Domain, string UserAccount, string UserPassWord)
 9         {
10             string ReturnValue = string.Empty;
11             try
12             {
13                 //throw new InvalidPluginExecutionException(Domain + "|==|" + UserAccount + "|==|" + UserPassWord);
14                 DirectoryEntry entry = new DirectoryEntry("LDAP://" + Domain, UserAccount, UserPassWord, AuthenticationTypes.Secure);
15                 DirectorySearcher mySearcher = new DirectorySearcher(entry);
16                 mySearcher.Filter = ("(&(objectClass=user)(sAMAccountName=" + UserAccount + "))");
17                 SearchResult searchResult = mySearcher.FindOne();
18                 if (searchResult != null)
19                 {
20                     ReturnValue = "1";
21                 }
22             }
23             catch (Exception ex)
24             {
25                 ReturnValue = "账号有误:" + ex.Message;
26             }
27             return ReturnValue;
28         }
View Code
/// <summary>
        /// 修改AD域密码
        /// </summary>
        /// <param name="Domain"></param>
        /// <param name="AdministratorAccount">管理员账号</param>
        /// <param name="UserAccount">待修改密码账户</param>
        /// <param name="AdministratorPassWord">管理员账户密码</param>
        /// <param name="UserNewPassWord">新用户新密码</param>
        /// <param name="User_ConfirmPassword">新用户新密码确认</param>
        /// <returns></returns>
        private static string UpdateADAccount(string Domain, string AdministratorAccount, string UserAccount, string AdministratorPassWord, string UserNewPassWord, string User_ConfirmPassword)
        {
            //反馈内容、
            string ReturnString = string.Empty;
            if (UserNewPassWord == User_ConfirmPassword)
            {
                try
                {
                    DirectoryEntry entry = new DirectoryEntry("LDAP://" + Domain, AdministratorAccount, AdministratorPassWord, 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 });
                    ReturnString = "修改密码成功!!";
                }
                catch (Exception ex)
                {
                    ReturnString = "修改密码出错!!问题可能是:" + ex.Message;
                }
            }
            else
            {
                ReturnString = "两次密码输入不一致";
            }

            return ReturnString;
        }
View Code

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
c代码中调用c++,c++代码中调用c代码发布时间:2022-07-14
下一篇:
使用C#如何写入/读取注册表信息发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap