public override void OnAuthorization(AuthorizationContext filterContext) { // Se não tiver token if (filterContext.HttpContext.Session["TOKEN"] == null) { filterContext.Result = new RedirectResult("~/Login"); } else { String token = filterContext.HttpContext.Session["TOKEN"].ToString(); BPLogin bp = new BPLogin(); if (!bp.TokenEhValido(token) || !bp.UsuarioAtivo(token)) { filterContext.Result = new RedirectResult("~/Login"); } } }
public ActionResult Validar(LoginModels model) { BPLogin bplogin = new BPLogin(); if (!bplogin.Validar(model.usuario, model.senha)) { AddMessage("Autenticação", "Usuário e/ou Senha não foram identificados.", "erro", true); return(RedirectToAction("Index")); } String token = bplogin.RecuperarToken(model.usuario, model.senha); if (!bplogin.UsuarioAtivo(token)) { AddMessage("Autenticação", "Sua conta está bloqueada. Entre em contato com o Administrador do Sistema.", "error", true); return(RedirectToAction("Index")); } else { Session["TOKEN"] = token; Session["VISAO"] = false; return(RedirectToAction("Index", "Home")); } }