Ejemplo n.º 1
0
        public async Task <ActionResult> Autenticar(LoginViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = _gerenciadoraUsuario.ObterPorLoginSenha(MethodsUtils.RemoverCaracteresEspeciais(model.Cpf), Criptografia.GerarHashSenha(model.Senha));
                if (user != null)
                {
                    var claims = new List <Claim>
                    {
                        new Claim(ClaimTypes.SerialNumber, user.Id.ToString()),
                        new Claim(ClaimTypes.NameIdentifier, user.Nome),
                        new Claim(ClaimTypes.UserData, user.Cpf),
                        new Claim(ClaimTypes.Email, user.Email),
                        new Claim(ClaimTypes.OtherPhone, user.Telefone),
                        new Claim(ClaimTypes.Role, user.Tipo)
                    };

                    // Adicionando uma identidade as claims.
                    var identidade = new ClaimsIdentity(claims, "login");

                    // Propriedades da autenticação.
                    var propriedadesClaim = new AuthenticationProperties
                    {
                        ExpiresUtc = DateTimeOffset.UtcNow.AddDays(1) // Expira em 1 dia
                    };

                    // Logando efetivamente.
                    await HttpContext.SignInAsync(new ClaimsPrincipal(identidade), propriedadesClaim);

                    return(RedirectToAction("Index", "Home"));
                }
            }

            return(RedirectToAction("Index", "Login", new { msg = "error" }));
        }
Ejemplo n.º 2
0
 public ActionResult Create(UsuarioModel usuarioModel)
 {
     if (ModelState.IsValid)
     {
         usuarioModel.Cpf      = MethodsUtils.RemoverCaracteresEspeciais(usuarioModel.Cpf);
         usuarioModel.Telefone = MethodsUtils.RemoverCaracteresEspeciais(usuarioModel.Telefone);
         if (UsuarioService.UsuarioUnityOfWork.UsuarioRepository.Inserir(usuarioModel))
         {
             return(RedirectToAction(nameof(Index)));
         }
     }
     return(View(usuarioModel));
 }
Ejemplo n.º 3
0
        public ActionResult CriarUser(UsuarioModel usuario)
        {
            if (ModelState.IsValid)
            {
                // Informações do objeto
                usuario.Cpf   = MethodsUtils.RemoverCaracteresEspeciais(usuario.Cpf);
                usuario.Senha = Criptografia.GerarHashSenha(usuario.Senha);
                usuario.Tipo  = "CLIENTE";

                if (UsuarioService.UsuarioUnityOfWork.UsuarioRepository.Inserir(usuario))
                {
                    return(RedirectToAction("Index", "Login", new { msg = "Success" }));
                }
            }
            return(View(usuario));
        }
Ejemplo n.º 4
0
        public ActionResult CriarUser(UsuarioModel usuario)
        {
            if (ModelState.IsValid)
            {
                // Informações do objeto
                usuario.Cpf   = MethodsUtils.RemoverCaracteresEspeciais(usuario.Cpf);
                usuario.Senha = Criptografia.GerarHashSenha(usuario.Senha);
                usuario.Tipo  = "CLIENTE";

                if (_gerenciadoraUsuario.Inserir(usuario))
                {
                    return(RedirectToAction("Autenticar", "Login"));
                }
            }
            return(View(usuario));
        }