首页 > 代码库 > asp.net权限认证篇外:集成域账号登录
asp.net权限认证篇外:集成域账号登录
在之前的我们已经讲过asp.net权限认证:Windows认证,现在我们来讲讲域账号登录,
这不是同一件事哦,windows认证更多的是对资源访问的一种权限管控,而域账号登录更多的是针对用户登录的认证,他一般与forms认证结合一起使用
demo就用之前的asp.net权限认证:Forms认证
1、改一下LoginController,如下
1 public class LoginController : Controller 2 { 3 public ActionResult Index() 4 { 5 var returnUrl = Request["ReturnUrl"]; 6 7 if (Request.HttpMethod == "POST") 8 { 9 try10 {11 // 格式为: 域\登录名12 var domainUser = Request["userid"];13 var password = Request["password"];14 var userArr = domainUser.Split(‘\\‘);15 16 var entry = new DirectoryEntry(string.Concat("LDAP://", userArr[0]), userArr[1], password);17 var search = new DirectorySearcher(entry);18 var result = search.FindOne();19 if (result != null)20 {21 var ticket = new FormsAuthenticationTicket(22 1,23 userArr[1],24 DateTime.Now,25 DateTime.Now.AddMinutes(20),26 true,27 "role1,role2,role3,role4",28 "/"29 );30 31 var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(ticket));32 cookie.HttpOnly = true;33 HttpContext.Response.Cookies.Add(cookie);34 35 return Redirect(returnUrl);36 }37 }38 catch (Exception ex)39 {40 // 抛出异常。41 }42 }43 44 ViewBag.ReturnUrl = returnUrl;45 46 return View();47 }48 }
2、运行项目,出现登录页面,正常的,因为我们默认首页就加了权限限制,输入域账户口令
3、登录
完全没有问题,是不是很简单呀?
asp.net权限认证篇外:集成域账号登录
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。