docs(deploy): document gateway-trusted-ca for OpenShift OIDC - #459
docs(deploy): document gateway-trusted-ca for OpenShift OIDC#459bsquizz wants to merge 4 commits into
Conversation
|
|
Can we add a configuration where we can set the name of the ConfigMap to load? copying the value from the injected ones to another is prone to having it rot. What if the CA inside it expire? or is rotated for security? we will have downtime, if we point to the one managed automatically by the OpenShift automations we are sure to always have the latest one... |
|
🤖 Amber Review Pure documentation addition filling a real operational gap. Adds Findings:
No code changes, no security surface touched. Content accurately reflects the running implementation. Confidence: High — Amber, ACP codebase intelligence |
On OpenShift, the gateway's minimal container image lacks the cluster ingress CA, causing JWKS fetch failures when OIDC is configured against a Keycloak Route. Document the required gateway-trusted-ca ConfigMap setup and add a troubleshooting entry for the "OIDC key refresh failed" error. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
On OpenShift, the openshell-sandbox service account needs the privileged SCC in each tenant namespace or sandbox pods fail to start. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The control plane automatically creates the required RoleBinding for the openshell-sandbox service account when a gateway is provisioned, so the manual oc adm policy command is only needed when pre-creating namespaces. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
facf463 to
ac1eb00
Compare
Add bidirectional cross-references between gateway_reconciler.go constants and the deploy docs so name changes don't silently drift. Note that router-ca may not exist on ROSA with STS or other managed OCP variants. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Let's write a new spec for this if we want to change the behavior. I'll keep this PR to simply be a doc PR |
Summary
gateway-trusted-caConfigMap setup for OpenShift clusters using gateway OIDC (Keycloak)Context
gateway-trusted-ca (8c56a6c)
On OpenShift, the gateway container image (scratch/distroless) has no system CA bundle. When OIDC is configured against a Keycloak instance exposed via an OpenShift Route, the gateway cannot complete the TLS handshake to fetch JWKS keys — the ingress CA that signed the Route's certificate is not trusted.
The control plane already supports injecting a trusted CA via the
gateway-trusted-caConfigMap (SSL_CERT_FILE+ volume mount), but this prerequisite was undocumented.privileged SCC for sandbox pods (facf463)
On OpenShift, the
openshell-sandboxservice account needs the privileged SCC in each tenant namespace or sandbox pods fail to start. This requirement was undocumented.Test plan
oc get configmap router-cacommand works on a ROSA/OCP clustergateway-trusted-ca) and key (ca-bundle.crt) match the constants ingateway_reconciler.gooc adm policycommand for the privileged SCC works on a ROSA/OCP cluster🤖 Generated with Claude Code