public ActionResult Index(UsuarioModelLogin model) { try { if (ModelState.IsValid) { Usuario usuario = usuarioDal.Autenticar(model.Email, Criptografia.Encriptar(model.Senha)); if (usuario != null) { // conceder permissão ao usuario // tickete de acesso // false define que o tiket e destruido quando o navegador for fechado //FormsAuthentication.SetAuthCookie(u.Email, false); var jsonUsuario = JsonConvert.SerializeObject(usuario); FormsAuthentication.SetAuthCookie(jsonUsuario, model.Remember); // armazenar os dados do usuario em sessao//a sessao e um espaco de memorioa mantido enquanto o navegador estiver aberto //Session.Add("usuario", usuario); if (model.Url != null) { return(Redirect(model.Url)); } if (usuario.Permissao.Valor.Contains("master")) { return(RedirectToAction("index", "veiculos", new { area = "master" })); } else { return(RedirectToAction("index", "veiculos")); } } else { TempData["Mensagem"] = "Acesso negado! Verifique se seu Email ou Senha estão corretos."; return(RedirectToAction("index")); } } } catch (Exception) { throw; } return(View("Index")); }
public ActionResult Login(LoginViewModel model) { try { if (ModelState.IsValid) { UsuarioDal d = new UsuarioDal(); Usuario u = d.Autenticar(model.Login, Criptografia.GetMD5Hash(model.Senha)); if (u != null) { //Gerar ticket de acesso FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(u.Login, model.LembrarSenha, 5); //grava o ticket HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, FormsAuthentication.Encrypt(ticket)); Response.Cookies.Add(cookie); //Armazernar o usuário em sessão Session.Add("usuariologado", u); return RedirectToAction("Index", "Home"); } else { ViewBag.Mensagem = "Acesso Negado"; } } } catch (Exception e) { ViewBag.mensagem = e.Message; } return View("LoginView"); }