public ActionResult <PersonaDto> Login(Usuarios usuario) { var user = _context.Usuarios.Include(u => u.IdPersonaNavigation) .FirstOrDefault(x => x.IdPersonaNavigation.Email == usuario.UsuarioNombre); if (user == null) { return(BadRequest(new { message = "Usuario invalido" })); } if (!BCrypt.Net.BCrypt.Verify(usuario.Password, user.Password)) { return(BadRequest(new { message = "Usuario invalido" })); } var jwt = _jwtService.Generate(user.IdUsuario); Response.Cookies.Append("jwt", jwt, new CookieOptions { HttpOnly = true }); return(new PersonaDto { Apellido = user.IdPersonaNavigation.Apellido, Nombre = user.IdPersonaNavigation.Nombre }); }
public async Task <IActionResult> Register([FromBody] BasicRegisterRequest request) { if (!ModelState.IsValid) { return(BadRequest()); } var addUserResult = await _userRepository.AddUserAsync(request); if (!addUserResult.Succeed) { return(Problem(addUserResult.Errors)); } var user = addUserResult.Data; // Generates tokens var generateTokensResult = _jwtService.Generate(user.Id, request.Name, request.Email); if (generateTokensResult.Succeed) { return(BadRequest(generateTokensResult.Errors)); } var tokens = generateTokensResult.Data; // Cookies Response.Cookies.Append("pritz_jwt", tokens.Token, new Microsoft.AspNetCore.Http.CookieOptions { }); return(Ok(tokens)); }
public IActionResult Login(LoginDto dto) { var user = _repository.GetByEmail(dto.Email); if (user == null) { return(BadRequest(new { message = "Invalid Credentials" })); } if (!BCrypt.Net.BCrypt.Verify(dto.Password, user.Password)) { return(BadRequest(new { message = "Invalid Credentials" })); } var jwt = _jwtService.Generate(user.Id); Response.Cookies.Append("jwt", jwt, new CookieOptions { HttpOnly = true }); return(Ok(new { message = "success" })); }
public IActionResult Login(DTO data) { string hashedPassword = Convert.ToBase64String(KeyDerivation.Pbkdf2( password: data.password, salt: salt, prf: KeyDerivationPrf.HMACSHA256, iterationCount: 100000, numBytesRequested: 256 / 8)); var user = db.Users.FirstOrDefault(x => x.Email == data.email); //var user2 = db.Users.Where(u => u.Email == data.email).FirstOrDefault(); //var userId = db.Users.Where(u => u.Email == data.email).Select(x => x.Id).FirstOrDefault(); //var userId2 = db.Users.FirstOrDefault(x => x.Email == data.email).Id; if (!db.Users.Any(x => data.email == x.Email) || !db.Users.Any(x => hashedPassword == x.Password || data.password == x.Password)) { return(NotFound()); } var jwt = jwtService.Generate(user.Id); Response.Cookies.Append("jwt", jwt, cookieOptions); return(Ok(new { message = "success", Username = user.Username, Question = user.Q1 })); }
public async Task <IActionResult> Login([FromBody] LoginViewModel request) { var admin = await _repo.GetAdminByEmail(request.Email); if (admin == null) { return(BadRequest(new { message = "Invalid Credentials" })); } var passwordsMatch = BCrypt.Net.BCrypt.Verify(request.Password, admin.Password); if (!passwordsMatch) { return(BadRequest(new { message = "Invalid Credentials" })); } var jwt = _jwtService.Generate(admin.Id); Response.Cookies.Append("jwt", jwt, new CookieOptions { HttpOnly = true, SameSite = SameSiteMode.None, Secure = true, }); return(Ok(new { message = "Success" })); }
public IActionResult TrainerLogin(DTOTrainers data) { string hashedPassword = Convert.ToBase64String(KeyDerivation.Pbkdf2( password: data.trainerPassword, salt: salt, prf: KeyDerivationPrf.HMACSHA256, iterationCount: 100000, numBytesRequested: 256 / 8)); var trainer = db.Trainers.FirstOrDefault(x => x.TEmail == data.trainerEmail); if (!db.Trainers.Any(x => data.trainerEmail == x.TEmail) || !db.Trainers.Any(x => hashedPassword == x.TPassword || data.trainerPassword == x.TPassword)) { return(NotFound()); } var jwt = jwtService.Generate(trainer.Id); Response.Cookies.Append("jwt", jwt, cookieOptions); return(Ok(new { message = "success", Username = trainer.TUsername })); }
public string GenerateToken() { return(_JwtService.Generate( _DateTimeProvider.Now().AddSeconds(30).ToUnixTime(), new Dictionary <string, object> { [PayloadElement] = Guid.NewGuid().ToString() // make polltoken unique })); }
public async Task <IActionResult> Login([FromBody] User user) { var result = await _userService.Login(user); var jwt = _jwtService.Generate(result.Id); Response.Cookies.Append("jwt", jwt, new CookieOptions { HttpOnly = true }); return(Ok(new { message = "success" })); }
public IActionResult Execute(HttpContext httpContext) { if (httpContext == null) { throw new ArgumentNullException(nameof(httpContext)); } var jwtToken = _JwtService.Generate(httpContext.User); // temporary claim payload redirect solution for demo purposes return(new RedirectResult(_Configuration.FrontendBaseUrl + "/auth?token=" + jwtToken)); }
public IActionResult AdminLogin(AdminDTO data) { var admin = db.Admin.FirstOrDefault(x => x.Email == data.Email); if (!db.Admin.Any(x => data.Email == x.Email) || !db.Admin.Any(x => data.Password == x.Password)) { return(NotFound()); } var jwt = jwtService.Generate(admin.Id); Response.Cookies.Append("jwt", jwt, cookieOptions); return(Ok(new { message = "success", Username = admin.Username })); }
public IActionResult Login(LoginDto dto) { var user = _context.Persons.FirstOrDefault(p => p.username == dto.username); if (user == null || user.password != dto.password) { return(BadRequest(new { message = "Invalid Credentials" })); } var jwt = _jwtService.Generate(user.id); Response.Cookies.Append("jwt", jwt, new CookieOptions { HttpOnly = true }); return(Ok(new { message = "Cookie Generated Successfully" })); }