Rework Admin UI #6
@@ -50,6 +50,15 @@ builder.Services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
|
||||
options.Audience = builder.Configuration["Keycloak:Audience"];
|
||||
options.RequireHttpsMetadata = false;
|
||||
options.MapInboundClaims = false;
|
||||
|
||||
// For Docker internal communication, use the direct Keycloak URL for metadata
|
||||
// This bypasses the hostname mismatch in Keycloak's discovery endpoint
|
||||
var keycloakAuthority = builder.Configuration["Keycloak:Authority"];
|
||||
if (keycloakAuthority?.Contains("keycloak:") == true)
|
||||
{
|
||||
options.MetadataAddress = $"{keycloakAuthority}/.well-known/openid-configuration";
|
||||
}
|
||||
|
||||
options.TokenValidationParameters = new Microsoft.IdentityModel.Tokens.TokenValidationParameters
|
||||
{
|
||||
ValidateIssuer = false, // Disabled for local dev - external clients use localhost:8080, internal use keycloak:8080
|
||||
|
||||
@@ -43,6 +43,9 @@ services:
|
||||
KC_HOSTNAME_STRICT: "false"
|
||||
KC_PROXY: "edge"
|
||||
KC_HTTP_PORT: "8081"
|
||||
# Additional hostname for internal Docker communication
|
||||
KC_HOSTNAME_ADMIN: "http://keycloak:8081"
|
||||
KC_SPI_HOSTNAME_DEFAULT_ADMIN: "keycloak:8081"
|
||||
ports:
|
||||
- "8080:8081"
|
||||
volumes:
|
||||
|
||||
Reference in New Issue
Block a user