public ActionResult Login(UsuarioLoginView u) { // esta action trata o post (login) if (ModelState.IsValid) //verifica se é válido { if (u.email == "admin@admin" && u.senhacripto == "admin") { Session["usuarioId"] = "0"; //0 = ADMIN Session["nomeUser"] = "******"; return(RedirectToAction("Index")); } else { using (Repositorio <Usuario> dc = new Repositorio <Usuario>()) { var senhaCripto = Validacao.SenhaCripto(u.senhacripto); var v = dc.Primeiro(e => e.email.TrimEnd() == u.email && senhaCripto == e.senhacripto); if (v != null) { //Gravar COOKIE // OU SESSION //cada um tem as suas vantagens e desvantages //Adicionei no web config 20 min Session["usuarioId"] = v.id.ToString(); Session["nomeUser"] = v.nome; //https://www.codeproject.com/articles/244904/%2fArticles%2f244904%2fCookies-in-ASP-NET /*Response.Cookies["LoginCookie"]["userId"] = v.id.ToString(); * Response.Cookies["LoginCookie"]["nomeUser"] = v.nome; * Response.Cookies["LoginCookie"].Expires = DateTime.Now.AddDays(1);*/ return(RedirectToAction("Index")); } } } } ViewBag.Message = "Usuario ou senha inválidos!"; return(View(u)); }
public ActionResult LogIn(UsuarioLoginView ULV, string returnUrl) { if (ModelState.IsValid) { SeguridadManager UM = new SeguridadManager(); string password = UM.GetUserPassword(ULV.Usuario); if (string.IsNullOrEmpty(password)) { ModelState.AddModelError("", "Usuario No Identificado."); } else { if (ULV.Password.Equals(password)) { string ipaddress = Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (ipaddress == "" || ipaddress == null) { ipaddress = Request.ServerVariables["REMOTE_ADDR"]; } ResultadoSesionView _resultado = UM.crearSesion(ULV.Usuario, ULV.Password, ipaddress); if (_resultado.IdSesion > 0) { HttpContext.Session.Add("IdSesion", _resultado.IdSesion); FormsAuthentication.SetAuthCookie(ULV.Usuario, false); FormsAuthentication.RedirectFromLoginPage(ULV.Usuario, false); } else { ModelState.AddModelError("", _resultado.Resultado); } } else { ModelState.AddModelError("", "El Password Proporcionado es Incorrecto"); } } } // If we got this far, something failed, redisplay form return(View(ULV)); }