var tenants = builder.Configuration.GetSection("Tenants").Get<List<Tenant>>();
foreach (var tenant in tenants)
{
builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, o =>
{
o.MetadataAddress = tenant.MetadataAddress;
o.RequireHttpsMetadata = tenant.HTTPS;
o.Authority = tenant.Authority;
o.Audience = "account";
o.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidIssuer = tenant.Issuer,
ValidateLifetime = true,
ClockSkew = TimeSpan.FromMinutes(0)
};
});
}
var tenants = builder.Configuration.GetSection("Tenants").Get<List<Tenant>>();
foreach (var tenant in tenants)
{
builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
.AddJwtBearer(JwtBearerDefaults.AuthenticationScheme, o =>
{
o.MetadataAddress = tenant.MetadataAddress;
o.RequireHttpsMetadata = tenant.HTTPS;
o.Authority = tenant.Authority;
o.Audience = "account";
o.TokenValidationParameters = new TokenValidationParameters
{
ValidateIssuer = true,
ValidIssuer = tenant.Issuer,
ValidateLifetime = true,
ClockSkew = TimeSpan.FromMinutes(0)
};
});
}