You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The prod ScoutID Keycloak (j26-prod) uses a Keycloak 26 bootstrap admin (KC_BOOTSTRAP_ADMIN_USERNAME/_PASSWORD, materialized from KV via the CSI driver and set on the Deployment in 20-keycloak.yaml). The Keycloak admin UI shows the standard "temporary admin user" warning while this exists.
55-ensure-master-admin-job.yaml already creates a permanent master-realm admin (j26-keycloak-admin), so the recommended remediation ("create a permanent admin, then remove the temporary one") is half-done.
Why this isn't a one-liner
The bootstrap admin is currently the credential that two Jobs authenticate with, so it cannot simply be removed:
Job
Hook
Auths as
keycloak-config (config-cli)
Sync (every ArgoCD sync)
KC_BOOTSTRAP_ADMIN_*
ensure-master-admin
PostSync
KC_BOOTSTRAP_ADMIN_*
Removing the bootstrap admin without repointing these would break the entire Keycloak GitOps loop (the config-cli import that applies the realm config runs as bootstrap on every sync).
Proposed steps (sequenced)
Repoint keycloak-config's KEYCLOAK_USER/KEYCLOAK_PASSWORD at the permanent j26-keycloak-admin (the MASTER_ADMIN_* secret keys) instead of the bootstrap keys.
Decide what to do with ensure-master-admin — it becomes circular once it authenticates as the user it ensures; either keep it bootstrap-authed or retire the Job once the permanent admin is proven stable.
Once nothing uses bootstrap: remove KC_BOOTSTRAP_ADMIN_* from the Deployment and delete the temporary admin user (small kcadm step) → the UI warning clears.
Notes
Sequencing-sensitive: a wrong order can lock out admin access or break config sync. Validate against a non-prod realm first if possible.
Background
The prod ScoutID Keycloak (
j26-prod) uses a Keycloak 26 bootstrap admin (KC_BOOTSTRAP_ADMIN_USERNAME/_PASSWORD, materialized from KV via the CSI driver and set on the Deployment in20-keycloak.yaml). The Keycloak admin UI shows the standard "temporary admin user" warning while this exists.55-ensure-master-admin-job.yamlalready creates a permanent master-realm admin (j26-keycloak-admin), so the recommended remediation ("create a permanent admin, then remove the temporary one") is half-done.Why this isn't a one-liner
The bootstrap admin is currently the credential that two Jobs authenticate with, so it cannot simply be removed:
keycloak-config(config-cli)KC_BOOTSTRAP_ADMIN_*ensure-master-adminKC_BOOTSTRAP_ADMIN_*Removing the bootstrap admin without repointing these would break the entire Keycloak GitOps loop (the config-cli import that applies the realm config runs as bootstrap on every sync).
Proposed steps (sequenced)
keycloak-config'sKEYCLOAK_USER/KEYCLOAK_PASSWORDat the permanentj26-keycloak-admin(theMASTER_ADMIN_*secret keys) instead of the bootstrap keys.ensure-master-admin— it becomes circular once it authenticates as the user it ensures; either keep it bootstrap-authed or retire the Job once the permanent admin is proven stable.KC_BOOTSTRAP_ADMIN_*from the Deployment and delete the temporary admin user (smallkcadmstep) → the UI warning clears.Notes