| 12345678910111213141516171819202122232425262728 |
- using Microsoft.AspNetCore.Authentication.JwtBearer;
- using Microsoft.AspNetCore.Authentication;
- using Microsoft.IdentityModel.Tokens;
- using System.Text;
- namespace DopInterfacePlatform
- {
- public static class JWTExtensions
- {
- public static AuthenticationBuilder AddJWTAuthentication(this IServiceCollection services, JwtOptions jwtOptions)
- {
- return services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
- .AddJwtBearer(x =>
- {
- x.TokenValidationParameters = new()
- {
- ValidateIssuer = true,//是否验证发行商
- ValidateAudience = true,//是否验证受众者
- ValidateLifetime = true,//是否验证失效时间
- ValidateIssuerSigningKey = true,//是否验证签名键
- ValidIssuer = jwtOptions.Issuer,
- ValidAudience = jwtOptions.Audience,
- IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(jwtOptions.Key))
- };
- });
- }
- }
- }
|