public ActionResult SumbitLogon(VOUser user) { if (string.IsNullOrEmpty(user.UserName) || string.IsNullOrEmpty(user.Password)) { return(RedirectToAction("Logon", "LogonForm", new { message = "登录名,密码不能为空!" })); } JsonUser jsonUser = UserService.CheckUserPassword(user.UserName, user.Password); CookieUtils.AddCookie("LogonID", user.UserName, System.Web.HttpContext.Current); if (user.RememberMe) { HttpCookie cookie = CookieUtils.GetCookie(System.Web.HttpContext.Current, "LogonID"); cookie.Expires = DateTime.Now.AddDays(7); } GlobalVariables.CurrentUser = jsonUser; if (jsonUser == null) { return(RedirectToAction("Logon", "LogonForm", new { message = "用户名,密码验证失败!" })); } return(RedirectToAction("Index", "ParticipateConsultation")); }
public void CreateAuthenticationTicket(Users user, HttpResponseBase response, HttpContextBase httpContextBase, bool remember) { var serializeModel = GetModel(user); var userGroup = user.UserGroup; UserRep.AddUserCache(serializeModel); var expiration = remember ? DateTime.Now.AddYears(1) : DateTime.Now.AddMinutes(FormsAuthentication.Timeout.TotalMinutes); string userData = $"{user.GId}|{UserRep.GetIP()}|{userGroup}"; var authTicket = new FormsAuthenticationTicket( 1, user.GId.ToString(), DateTime.Now, expiration, remember, userData); string encTicket = FormsAuthentication.Encrypt(authTicket); CookieUtils.AddCookie(GetCookieName(), encTicket, expiration); setPrinciple(serializeModel, userGroup); }
public void CreateAuthenticationTicket(Users user, HttpResponseBase response, HttpContextBase httpContextBase, bool remember) { var serializeModel = GetModel(user); Cache.Add(user.GId.ToString(), serializeModel, CacheTime); var expiration = remember ? DateTime.Now.AddYears(1) : DateTime.Now.AddHours(1); var authTicket = new FormsAuthenticationTicket( 1, user.GId.ToString(), DateTime.Now, expiration, remember, user.GId.ToString()); string encTicket = FormsAuthentication.Encrypt(authTicket); CookieUtils.AddCookie(GetCookieName(), encTicket, remember); var userPrincipal = new SysUser(serializeModel); httpContextBase.User = userPrincipal; }
/// <summary> /// 登录认证 /// </summary> /// <param name="userName"></param> /// <param name="password"></param> /// <returns></returns> public JsonMessage UserLoginAuth(string userName, string password) { if (string.IsNullOrEmpty(userName)) { return(JsonHandler.CreateMessage(-1, "请输入用户名")); } if (string.IsNullOrEmpty(password)) { return(JsonHandler.CreateMessage(-1, "请输入密码")); } User user = GetUser(userName, password); if (user == null || user.UserId <= 0) { return(JsonHandler.CreateMessage(0, "用户名或密码错误")); } var userInfo = new { UserId = user.UserId, UserName = user.UserName, PassWord = user.PassWord, Mobile = user.Mobile, Role = user.Role }; //生成token var token = Guid.NewGuid().ToString(); //写入token CookieUtils.AddCookie("token", token, 30); //写入凭证 RedisUtils.Set(token, userInfo, new TimeSpan(0, 30, 0)); return(JsonHandler.CreateMessage(1, "登录成功")); }