Skip to content

Instantly share code, notes, and snippets.

@CoskunKurtuldu
Created August 31, 2020 15:00
Show Gist options
  • Save CoskunKurtuldu/58345c88d72a1d3f458c001a5252afa1 to your computer and use it in GitHub Desktop.
Save CoskunKurtuldu/58345c88d72a1d3f458c001a5252afa1 to your computer and use it in GitHub Desktop.
private string GenerateJwt(User user, IList<string> roles)
{
var claims = new List<Claim>
{
new Claim(JwtRegisteredClaimNames.Sub, user.Id.ToString()),
new Claim(ClaimTypes.Name, user.UserName),
new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
new Claim(ClaimTypes.NameIdentifier, user.Id.ToString())
};
var roleClaims = roles.Select(r => new Claim(ClaimTypes.Role, r));
claims.AddRange(roleClaims);
var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_jwtSettings.Secret));
var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256);
var expires = DateTime.Now.AddDays(Convert.ToDouble(_jwtSettings.ExpirationInDays));
var token = new JwtSecurityToken(
issuer: _jwtSettings.Issuer,
audience: _jwtSettings.Issuer,
claims,
expires : expires,
signingCredentials : creds
);
return new JwtSecurityTokenHandler().WriteToken(token);
}
@CoskunKurtuldu
Copy link
Author

Coşkun bey projeyi kaldırdınız sanırım kaynak kodu görüntüleyemiyorum. eğer proje halen mevcut ise kaynak kodlarını talep edebilir miyim ?

Merhaba, maalesef kaynak kodları yok ama https://coskunkurtuldu.medium.com/net-core-3-json-web-token-jwt-kullanarak-apinizi-koruma-c1fcf78c16bd bu adresten makalesine ulaşabilirsiniz.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment