コード例 #1
0
        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"));
        }
コード例 #2
0
        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");
        }