.Net C#域账号登陆验证

//获取登陆页输入的域账号、密码
string domainIP = "";      //域IP
string userAccount = "";    //域账号
string Password = "";      //域账号密码          
using (DirectoryEntry deUser = new DirectoryEntry(@"LDAP://" + domainIP, userAccount, Password))
{
DirectorySearcher src = new DirectorySearcher(deUser);
src.Filter = "(&(&(objectCategory=person)(objectClass=user))(sAMAccountName=" + userAccount + "))";
src.PropertiesToLoad.Add("cn");
src.SearchRoot = deUser;
src.SearchScope = SearchScope.Subtree;

SearchResult result = src.FindOne();
if (result != null)//验证成功
{
DirectoryEntry de = result.GetDirectoryEntry();
string userID = de.Username;
#region 域账号验证通过后判断是否用户在本系统中
var existUser = new DAL.Maintain.UserOP().GetData(userID);
if (existUser == null)
{
ViewBag.ErrorInfo = "提示:您未开通系统的权限,请联系管理员。<br/>You have no access to the system, please contact the administrator!";
return View();
} 
#endregion

FormsAuthentication.SetAuthCookie(userID, false);
Session.Add("UserID", userID);
Logger.DefaultLog.Info("登陆sessionUserID:" + Session["UserID"].ToString());

if (string.IsNullOrEmpty(ReturnUrl))
{
return Redirect(Url.Action("Index", "Home"));
}
else
{
//...
}
}
else
{
ViewBag.ErrorInfo = "提示:登录失败: 未知的用户名或错误密码。<br/>Account or Password is incorrect!";
return View();
}

}

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值