private List <Claim> PopulateTokenClaims(PlayerAuthModel player) { return(new List <Claim>() { new Claim(ClaimTypes.Name, player.Name), new Claim(JwtRegisteredClaimNames.Jti, player.Id.ToString()) }); }
public Task <string> GenerateToken(PlayerAuthModel player) { var claims = PopulateTokenClaims(player); var secretKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_configuration["Jwt:Key"])); var signinCredentials = new SigningCredentials(secretKey, SecurityAlgorithms.HmacSha256); var tokeOptions = new JwtSecurityToken( issuer: _configuration["Jwt:Issuer"], audience: _configuration["Jwt:Issuer"], claims: claims, expires: DateTime.Now.AddMinutes(30), signingCredentials: signinCredentials ); var tokenString = new JwtSecurityTokenHandler().WriteToken(tokeOptions); return(Task.FromResult(tokenString)); }