详解C#使用AD(Active Directory)验证内网用户名密码

这篇文章主要介绍了详解C#使用AD(Active Directory)验证内网用户名密码的相关资料,希望通过本文能帮助到大家,让大家实现这样的功能,需要的朋友可以参考下

详解C#使用AD(Active Directory)验证内网用户名密码

1. 连到内网,找到AD的domain地址


nslookup 
set types=all
_ldap._tcp

2. 验证AD的函数


public bool ADLogin(string userName, string password) 
    { 
      // sample : 
      // LDAP://xxx.com 
      string domain = System.Configuration.ConfigurationManager.AppSettings["AD_Domain"]; 
       
      try 
      { 
        DirectoryEntry entry = new DirectoryEntry(domain, userName, password); 
        object obj = entry.NativeObject; 
        DirectorySearcher search = new DirectorySearcher(entry); 
        search.Filter = string.Format("(SAMAccountName={0})", userName); 
        search.PropertiesToLoad.Add("cn"); 
 
 
        SearchResult result = search.FindOne(); 
        if (result == null) 
          return false; 
      } 
      catch (Exception ex) 
      { 
        log.Error(ex); 
        return false; 
      } 
 
 
      return true; 
    } 



如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文标题为:详解C#使用AD(Active Directory)验证内网用户名密码

基础教程推荐