public async Task <JwtTokenResponse> GetJwtToken(string userPhoneNumber, string userPassword) { string hashedPassword = HasherManager.GetHashedPassword(userPassword); ClaimsIdentity identity = await GetIdentity(userPhoneNumber, hashedPassword); if (identity is null) { return(null); } JwtSecurityToken jwt = new JwtSecurityToken( issuer: AuthOptions.ISSUER, audience: AuthOptions.AUDIENCE, notBefore: DateTime.Now, claims: identity.Claims, expires: DateTime.Now.Add(TimeSpan.FromMinutes(AuthOptions.LIFETIME)), signingCredentials: new SigningCredentials(AuthOptions.GetSymmetricSecurityKey(), SecurityAlgorithms.HmacSha256) ); string encodedJwt = new JwtSecurityTokenHandler().WriteToken(jwt); return(new JwtTokenResponse { JwtToken = encodedJwt, Role = identity.Claims.Last().Value }); }
public void RegisterUser(User user) { user.Password = HasherManager.GetHashedPassword(user.Password); Create(user); }