builder.Services.AddAuthentication(authOptions =>
{
authOptions.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
authOptions.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(jwtOptions =>
{
var key = builder.Configuration.GetValue<string>("JwtConfig:Key");
var keyBytes = Encoding.ASCII.GetBytes(key);
jwtOptions.SaveToken = true;
jwtOptions.RequireHttpsMetadata = false;
jwtOptions.TokenValidationParameters = new TokenValidationParameters
{
IssuerSigningKey = new SymmetricSecurityKey(keyBytes),
ValidateAudience = true,
ValidateLifetime = true,
ValidateIssuer = false,
ClockSkew = TimeSpan.Zero,
ValidIssuer = builder.Configuration["JwtConfig:Issuer"],
ValidAudience = builder.Configuration["JwtConfig:Audience"]
};
});
builder.Services.AddAuthentication(authOptions =>
{
authOptions.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
authOptions.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
})
.AddJwtBearer(jwtOptions =>
{
var key = builder.Configuration.GetValue<string>("JwtConfig:Key");
var keyBytes = Encoding.ASCII.GetBytes(key);
jwtOptions.SaveToken = true;
jwtOptions.RequireHttpsMetadata = false;
jwtOptions.TokenValidationParameters = new TokenValidationParameters
{
IssuerSigningKey = new SymmetricSecurityKey(keyBytes),
ValidateAudience = true,
ValidateLifetime = true,
ValidateIssuer = false,
ClockSkew = TimeSpan.Zero,
ValidIssuer = builder.Configuration["JwtConfig:Issuer"],
ValidAudience = builder.Configuration["JwtConfig:Audience"]
};
});