public IActionResult Post([FromBody] LoginRequest loginRequest) { var userInfo = userPersistence.Login(loginRequest.Username, loginRequest.Password); if (userInfo.Id == default(Guid)) { return(BadRequest()); } var token = new JwtSecurityToken( issuer: configuration["Jwt:Issuer"], audience: configuration["Jwt:Audience"], claims: new[] { new Claim(ClaimTypes.Name, userInfo.FirstName), new Claim(ClaimTypes.NameIdentifier, userInfo.Username), new Claim("UserId", userInfo.Id.ToString()) }, expires: DateTime.Now.AddDays(30), signingCredentials: new SigningCredentials(new SymmetricSecurityKey(Encoding.ASCII.GetBytes(configuration["Jwt:SecurityKey"])), SecurityAlgorithms.HmacSha256) ); return(Ok(new { AccessToken = new JwtSecurityTokenHandler().WriteToken(token) })); }
public bool Login(string password, string mail) { try { byte[] data = System.Text.Encoding.ASCII.GetBytes(password); data = new System.Security.Cryptography.SHA256Managed().ComputeHash(data); password = System.Text.Encoding.ASCII.GetString(data); } catch (Exception e) { throw new Exception(e.Message); } bool success = userPersistence.Login(password, mail); return(success); }