Ejemplo n.º 1
0
        public IActionResult criarSenha([FromBody] NovaSenhaDTO token)
        {
            try
            {
                if (!this._service.ValidaSenha(token.Senha))
                {
                    return(BadRequest(new { message = "Senha fornecida não satisfaz condições pré definidas!" }));
                }

                var usuario = this._service.ValidarToken(token);

                if (usuario == null)
                {
                    return(BadRequest());
                }

                byte[]     passwordHash, passwordSalt;
                AppAccount appAccount = new AppAccount();
                appAccount.CreatePasswordHash(token.Senha, out passwordHash, out passwordSalt);

                usuario.PasswordHash = passwordHash;
                usuario.PasswordSalt = passwordSalt;

                //var userDTO = this._mapper.Map<UserDTO>(usuario);
                //this.atualizarUsuario(userDTO);
                this._service.Update(usuario);

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest(new { message = ex.Message }));
            }
        }
Ejemplo n.º 2
0
        private Usuario validaToken(NovaSenhaDTO token)
        {
            var consultatoken = this._context.Token.FirstOrDefault(x => x.Chave.Equals(token.Chave));

            consultatoken.Senha = token.Senha;

            if (consultatoken == null)
            {
                return(null);
            }

            var tempo = (consultatoken.DataExpiracao - DateTime.Now).TotalHours;

            if (tempo > 1)
            {
                this._context.Token.Remove(consultatoken);
                return(null);
            }

            var usuario = this._context.Usuario.FirstOrDefault(x => x.Id == consultatoken.UsuarioId);

            this._context.Token.Remove(consultatoken);

            this._context.SaveChanges();

            return(usuario);
        }
Ejemplo n.º 3
0
 public Usuario validado(NovaSenhaDTO token)
 {
     return(this.validaToken(token));
 }
Ejemplo n.º 4
0
        public Usuario ValidarToken(NovaSenhaDTO token)
        {
            var vldToken = new ValidarToken(this._context);

            return(vldToken.validado(token));
        }