public async Task <IActionResult> Auth([FromBody] User user) { try { var userExists = new UserRepository().GetByEmail(user.login); if (userExists == null) { return(BadRequest(new { Message = "Email e/ou senha está(ão) inválido(s)." })); } if (userExists.senha != user.senha) { return(BadRequest(new { Message = "Email e/ou senha está(ão) inválido(s)." })); } var token = JwtAuth.GenerateToken(userExists); //return Ok(new //{ // Token = token, // Usuario = userExists //}); return(Ok(token)); } catch (Exception) { return(BadRequest(new { Message = "Ocorreu algum erro interno na aplicação, por favor tente novamente." })); } }
public async Task <IActionResult> Auth([FromBody] User user) { try { //uma boa prática seria usar DI (Injeção de dependência) //mas não é o foco do artigo var userExists = new UserRepository().GetByEmail(user.Email); if (userExists == null) { return(BadRequest(new { Message = "Email e/ou senha está(ão) inválido(s)." })); } if (userExists.Password != user.Password) { return(BadRequest(new { Message = "Email e/ou senha está(ão) inválido(s)." })); } var token = JwtAuth.GenerateToken(userExists); return(Ok(new { Token = token, Usuario = userExists })); } catch (Exception) { return(BadRequest(new { Message = "Ocorreu algum erro interno na aplicação, por favor tente novamente." })); } }
public async Task <ActionResult <dynamic> > Login([FromBody] UserLoginViewModel login) { if (!ModelState.IsValid) { return(BadRequest(new Response(false, "Data is invalid"))); } var user = await _uow.UserRepository.FindByCondition(u => u.Email == login.Email).SingleOrDefaultAsync(); if (user == null) { return(BadRequest(new Response(false, "User or password invalid"))); } if (login.Password.SHA256Encrypt() != user.Password) { return(BadRequest(new Response(false, "User or password invalid"))); } user.Password = string.Empty; var jwt = new JwtAuth(_config.GetValue <string>("JwtSettings:Secret")); var token = jwt.GenerateToken(user); return(new { user, token }); }
private async Task <object> GetToken(string userName, string userPassword) { var user = await this._userRepository.ReadUserByCredentials(userName, userPassword); if (user == null) { return(null); } var claims = new List <Claim> { new Claim(ClaimsIdentity.DefaultNameClaimType, user.Id.ToString()), new Claim(ClaimsIdentity.DefaultRoleClaimType, user.IsManager ? UserRole.Manager : UserRole.Customer), }; var identity = new ClaimsIdentity( claims, "Token", ClaimsIdentity.DefaultNameClaimType, ClaimsIdentity.DefaultRoleClaimType ); var token = JwtAuth.GenerateToken(identity.Claims); return(Ok(new { access_token = token, userId = user.Id, customerId = user.Customer_Id })); }
public IActionResult Auth([FromBody] Auth auth) { try { var userExists = _userService.GetUserByEmail(auth.Email); if (userExists == null) { return(BadRequest(new { Message = "Email e/ou senha está(ão) inválido(s)." })); } var token = JwtAuth.GenerateToken(userExists); return(Ok(new { User = userExists, Token = token })); } catch (Exception e) { Console.WriteLine(e.Message); return(BadRequest(new { Message = "Ocorreu algum erro interno na aplicação, por favor tente novamente." })); } }
public async Task <ActionResult <dynamic> > Autenticar([FromBody] Usuario usuario) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Usuario usuarioAutenticado; try { usuarioAutenticado = await _service.AutenticarUsuario(usuario); } catch (Exception) { return(BadRequest(new { message = "Não foi possível autenticar o usuário" })); } if (usuarioAutenticado == null) { return(NotFound(new { message = "Usuário ou senha inválidos" })); } var token = JwtAuth.GenerateToken(usuarioAutenticado); usuarioAutenticado.Senha = ""; return(new { usuario = usuarioAutenticado, token = token }); }
public IActionResult Login([FromBody] UserRequest data) { if (string.IsNullOrEmpty(data.Username) || string.IsNullOrEmpty(data.Password)) { return(BadRequest("Dữ liệu không được bỏ trống")); } var check = _userAccess.sp_User_Authenticate(data.Username, data.Password, ipAddress()); if (check == -49) { return(BadRequest("Tài khoản của bạn đã bị block")); } if (check == -50) { return(BadRequest("Tài khoản của bạn chưa được cấp quyền")); } if (check == -53) { return(BadRequest("Mật khẩu không chính xác")); } var _user = _userAccess.SP_User_GetByCondition(data.Username); string token = _jwtAuth.GenerateToken(_user); return(Ok(new { UserName = data.Username, TokenKey = token })); }
public IActionResult Auth([FromBody] UserViewModel user) { try { var userExists = _userService.CheckUserExists(user.Email, user.Password); if (userExists == null || userExists.Password != user.Password) { return(BadRequest(new { Message = "Email e/ou senha está(ão) inválido(s)." })); } var key = _configuration.GetValue <string>("AuthenticationSettings:Key"); var token = JwtAuth.GenerateToken(Encoding.ASCII.GetBytes(key)); return(Ok(new { Token = token, Usuario = userExists })); } catch (Exception ex) { return(BadRequest(new { Message = "Ocorreu algum erro interno na aplicação, por favor tente novamente.", ExceptionMessage = ex.Message })); } }