feat(authentik): automated SECRET_KEY rotation (openbao-ns) #302

Merged
k.renner merged 2 commits from feat/authentik-secret-rotation into master 2026-07-18 21:24:32 +00:00
Member

Fan-out #2. Rotates authentik-secrets:secret-key (Django signing key) — self-sync 2-sided (server + worker read the same secret; Reloader restarts both via global.podAnnotations). Per-secret rotator-authentik role/policy, no netpol; smtp-password in the same KV entry preserved; refreshInterval 1h→10m.

⚠️ Blast radius: rotating invalidates active SSO sessions + in-flight signed links (password-reset/invite/verify tokens) → users re-login. Downstream LDAP/proxy outposts use separate material, unaffected. Prefer an off-hours window for on-demand runs. Needs the one-time OpenBao bootstrap. kustomize + yamllint clean.

Fan-out #2. Rotates `authentik-secrets:secret-key` (Django signing key) — self-sync 2-sided (server + worker read the same secret; Reloader restarts both via `global.podAnnotations`). Per-secret `rotator-authentik` role/policy, no netpol; `smtp-password` in the same KV entry preserved; refreshInterval 1h→10m. ⚠️ **Blast radius**: rotating invalidates active SSO sessions + in-flight signed links (password-reset/invite/verify tokens) → users re-login. Downstream LDAP/proxy outposts use separate material, unaffected. Prefer an off-hours window for on-demand runs. Needs the one-time OpenBao bootstrap. kustomize + yamllint clean.
claude-bot added 1 commit 2026-07-18 20:06:59 +00:00
Rotates authentik-secrets:secret-key (Django signing key) quarterly + on-demand via the openbao-ns pattern (per-secret rotator-authentik role/policy, no netpol). Self-sync 2-sided: server + worker read the same secret; Reloader restarts both via global.podAnnotations. smtp-password in the same KV entry is preserved. externalsecret refreshInterval 1h->10m. BLAST RADIUS: invalidates active SSO sessions + in-flight signed links (re-login); downstream LDAP/proxy outposts unaffected. Requires the one-time OpenBao bootstrap.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015K7gLUVVnutvDnzV2TrMRJ
claude-bot added 1 commit 2026-07-18 21:24:09 +00:00
# Conflicts:
#	kubernetes/infrastructure/openbao/rotation/kustomization.yaml
k.renner merged commit d09d458235 into master 2026-07-18 21:24:32 +00:00
Sign in to join this conversation.