Carlos Andreimy
student•
hace 3 años
//Using C# Net7 using Microsoft.IdentityModel.Tokens; using System.IdentityModel.Tokens.Jwt; using System.Security.Claims; using System.Text; namespace PlayOauth { public class JwtHandler { private readonly string secretKey; public JwtHandler(string secretKey) { this.secretKey = secretKey; } public string GenerateToken(string username, int expirationMinutes = 60) { var key = Encoding.ASCII.GetBytes(secretKey); var tokenHandler = new JwtSecurityTokenHandler(); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, username), }), Expires = DateTime.UtcNow.AddMinutes(expirationMinutes), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); return tokenHandler.WriteToken(token); } } }
