var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes("my_secret_key"); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.Name, "John Doe") }), Expires = DateTime.UtcNow.AddHours(1), SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); var jwt = tokenHandler.WriteToken(token);
var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes("my_secret_key"); tokenHandler.ValidateToken(jwt, new TokenValidationParameters { ValidateIssuerSigningKey = true, IssuerSigningKey = new SymmetricSecurityKey(key), ValidateIssuer = false, ValidateAudience = false, ClockSkew = TimeSpan.Zero }, out var validatedToken);This code validates a JWT (previously generated by Example 1) by verifying the signature using the secret key and ensuring that certain validation parameters are met (such as no expiration or audience mismatches). It returns a validated token object if the JWT is valid. Overall, JwtSecurityTokenHandler is a useful tool for working with JWTs in C# applications.