域验证的两个函数(C#)

using System.DirectoryServices;
public bool CheckDomainUser(string UserName,string UserPassword)
  {
   try
   {
    string  path = System.Configuration.ConfigurationSettings.AppSettings["DomainString"];    
    string strUserName = UserName + "@xxx.com.cn";
    if(path == "")
    {
     path = "GC://DC=xxx,DC=com,DC=cn";
    }
    DirectoryEntry dir   = new DirectoryEntry(path,strUserName,UserPassword);
 
    int intCount = dir.Properties.Count;    
   }
   catch
   {
    return false;
   }
   return true;
  }

  /// <summary>
  /// 验证用户是否为合法的域用户
  /// </summary>
  /// <param name="UserName">域用户帐号</param>
  /// <returns></returns>
  [WebMethod]
  [System.ComponentModel.Description("")]
  public bool FindDomainUser(string UserName)
  {
   string strUserName = UserName +"@xxx.com.cn";
   string  path = System.Configuration.ConfigurationSettings.AppSettings["DomainString"];    
   
   if(path == "")
   {
    path = "GC://DC=xxx,DC=com,DC=cn";   
   }
   string strDomainUser = System.Configuration.ConfigurationSettings.AppSettings["DomainUser"];
   string strDomainPassword = System.Configuration.ConfigurationSettings.AppSettings["DomainPassword"]; 
   DirectoryEntry entry = new DirectoryEntry(path,strDomainUser,strDomainPassword);

   DirectorySearcher mySearcher = new DirectorySearcher(entry);
   mySearcher.Filter = ("(mail="+strUserName+")");
   System.DirectoryServices.SearchResult searchResultOne = mySearcher.FindOne();
   
   mySearcher.Filter = ("(mail="+UserName+"@xxx.com.cn)");
   System.DirectoryServices.SearchResult searchResultTwo = mySearcher.FindOne();
   
   if(searchResultOne  == null && searchResultTwo == null)
   {
    return  false;
   }
   else
   {
    return true;
   }

   

  } 

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论 2

打赏作者

sportdog

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值