public ParkdepotUser registerUser(ParkdepotUser newUser) { dbContext.Add(newUser); dbContext.SaveChanges(); return(getUser(newUser.Email)); }
public ParkdepotUser registerUser(ParkdepotUser newUser) { ParkdepotUser persistedUser = _authRepository.getUser(newUser.Email); if (persistedUser != null) { return(null); } newUser.Pass = hash(newUser.Pass); return(_authRepository.registerUser(newUser)); }
public ParkdepotUser login(string email, string password) { ParkdepotUser user = _authRepository.getUser(email); bool isPassCorrect = false; if (user != null) { isPassCorrect = verify(password, user.Pass); } return(isPassCorrect ? user : null); }
public IActionResult registerUser([FromBody] ParkdepotUser newUser) { ParkdepotUser persistedUser = authService.registerUser(newUser); string userToken = JwtTokenService.GenerateToken(persistedUser); //TODO: Add a DTO layer var userDTO = new { Email = persistedUser.Email, Username = persistedUser.Username, Permission = persistedUser.Permission, JwtToken = userToken }; return(Ok(userDTO)); }
public static string GenerateToken(ParkdepotUser user) { JwtSecurityTokenHandler tokenHandler = new JwtSecurityTokenHandler(); byte[] key = Encoding.ASCII.GetBytes(Settings.Secret); SecurityTokenDescriptor tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.Email, user.Email.ToString()), }), Expires = DateTime.UtcNow.AddHours(2), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; SecurityToken token = tokenHandler.CreateToken(tokenDescriptor); return(tokenHandler.WriteToken(token)); }
public async Task <ActionResult <dynamic> > login([FromBody] ParkdepotUser postedUser) { ParkdepotUser loggedUser = authService.login(postedUser.Email, postedUser.Pass); if (loggedUser == null) { return(BadRequest()); } string userToken = JwtTokenService.GenerateToken(loggedUser); //TODO: Add a DTO layer var userDTO = new { Email = loggedUser.Email, Username = loggedUser.Username, Permission = loggedUser.Permission, LandingPage = loggedUser.LandingPage, JwtToken = userToken }; return(Ok(userDTO)); }