using System.Text; using Microsoft.IdentityModel.Tokens; namespace TrackCenter.Api; public class JWTEncryption { /// 生成Token验证参数 /// /// public static TokenValidationParameters CreateTokenValidationParameters( JWTSettingsOptions jwtSettings) { var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jwtSettings.SecretKey)); return new TokenValidationParameters() { ValidateIssuer = true, ValidateAudience = true, ValidateLifetime = true, ValidateIssuerSigningKey = true, ValidIssuer = jwtSettings.Issuer, ValidAudience = jwtSettings.Audience, IssuerSigningKey = key, ClockSkew = TimeSpan.FromSeconds(jwtSettings.ClockSkewMinutes), // 验证过期时间 RequireExpirationTime = true }; } }