- Purpose: Provision browser-facing identity-aware access proxy wired to Keycloak OIDC for protected touchpoint routes.
- Enable flag:
IDENTITY_AWARE_PROXY_ENABLED(default:false) - Required inputs:
IAP_UPSTREAM_URLIAP_COOKIE_SECRETKEYCLOAK_ISSUER_URLKEYCLOAK_CLIENT_IDKEYCLOAK_CLIENT_SECRET
- Make targets:
infra-identity-aware-proxy-planinfra-identity-aware-proxy-applyinfra-identity-aware-proxy-deployinfra-identity-aware-proxy-smokeinfra-identity-aware-proxy-destroy
- Outputs:
IAP_PUBLIC_URLIAP_PUBLIC_HOSTIAP_UPSTREAM_URLIAP_OIDC_ISSUER
- Optional module Make targets are materialized by
make blueprint-render-makefile(ormake blueprint-bootstrap) whenIDENTITY_AWARE_PROXY_ENABLED=true. - Scaffolding paths are materialized by
make infra-bootstraponly whenIDENTITY_AWARE_PROXY_ENABLED=true. stackit-*profiles: module-specific ArgoCDApplicationreconcilesoauth2-proxy/oauth2-proxyfrominfra/gitops/argocd/optional/${ENV}/identity-aware-proxy.yaml, with OIDC credentials sourced from ESO-issuedsecurity/iap-runtime-credentials, and the chart creating anHTTPRoutethat attaches to the shared Gateway baseline frompublic-endpoints.local-*profiles: Helm chart (oauth2-proxy/oauth2-proxy) runs from a rendered values artifact derived from the scaffold contract ininfra/local/helm/identity-aware-proxy/values.yaml, and the chart creates the same Gateway APIHTTPRoutelocally.- This module is intentionally browser-oriented: it protects selected touchpoint hosts with OIDC login/session flow and should not be treated as the universal front door for public or bearer-token APIs.
- Public touchpoints and direct API routes can coexist with this module. Only the protected browser hosts that opt into the proxy should route through it.
- See Endpoint Exposure Model for the broader mixed-route policy model around this browser-authenticated path.
IAP_PUBLIC_HOSTIAP_NAMESPACEIAP_HELM_RELEASEIAP_HELM_CHARTIAP_HELM_CHART_VERSIONPUBLIC_ENDPOINTS_NAMESPACEPUBLIC_ENDPOINTS_GATEWAY_NAME
- Keycloak is the core identity capability.
- This module requires Keycloak issuer and client configuration.
public-endpointsmust provide the shared Gateway baseline that the route attaches to.- OIDC issuer/client mismatch is a hard failure in smoke checks.
- Local and fallback runtime paths pin the
oauth2-proxyimage explicitly so browser-authenticated routes do not drift with chart defaults.