Rework Admin UI #6
@@ -22,10 +22,11 @@ public class TenantValidationMiddleware
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Exempt bootstrap, admin, and debug endpoints from tenant validation
|
// Exempt bootstrap, admin, debug, and Keycloak OIDC endpoints from tenant validation
|
||||||
if (context.Request.Path.StartsWithSegments("/api/clubs/me") ||
|
if (context.Request.Path.StartsWithSegments("/api/clubs/me") ||
|
||||||
context.Request.Path.StartsWithSegments("/api/admin") ||
|
context.Request.Path.StartsWithSegments("/api/admin") ||
|
||||||
context.Request.Path.StartsWithSegments("/api/debug"))
|
context.Request.Path.StartsWithSegments("/api/debug") ||
|
||||||
|
context.Request.Path.StartsWithSegments("/realms"))
|
||||||
{
|
{
|
||||||
_logger.LogInformation("TenantValidationMiddleware: Exempting {Path} from tenant validation", context.Request.Path);
|
_logger.LogInformation("TenantValidationMiddleware: Exempting {Path} from tenant validation", context.Request.Path);
|
||||||
await _next(context);
|
await _next(context);
|
||||||
|
|||||||
@@ -147,9 +147,12 @@ app.UseHttpsRedirection();
|
|||||||
|
|
||||||
app.UseCors("AllowFrontend");
|
app.UseCors("AllowFrontend");
|
||||||
|
|
||||||
|
// IMPORTANT: Order matters!
|
||||||
|
// 1. Authentication must come before tenant validation so JWT middleware can fetch JWKS
|
||||||
|
// 2. Tenant validation should come after auth but before endpoints
|
||||||
app.UseAuthentication();
|
app.UseAuthentication();
|
||||||
app.UseAuthorization();
|
|
||||||
app.UseMiddleware<TenantValidationMiddleware>();
|
app.UseMiddleware<TenantValidationMiddleware>();
|
||||||
|
app.UseAuthorization();
|
||||||
app.UseMiddleware<MemberSyncMiddleware>();
|
app.UseMiddleware<MemberSyncMiddleware>();
|
||||||
|
|
||||||
app.MapHealthChecks("/health/live", new Microsoft.AspNetCore.Diagnostics.HealthChecks.HealthCheckOptions
|
app.MapHealthChecks("/health/live", new Microsoft.AspNetCore.Diagnostics.HealthChecks.HealthCheckOptions
|
||||||
|
|||||||
Reference in New Issue
Block a user