Files
unkin-agent 2f80c4a536
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/plan Pipeline failed
Onboard repospawner UI to Authentik OIDC
Add an OAuth2/OIDC provider + application for the repospawner operator tool,
fronted by oauth2-proxy, and gate it on a new akP-repospawner-admin permission
group nested under akR-global-admin (mirrors the watchstate precedent).
2026-08-30 15:09:47 +10:00

26 lines
1.1 KiB
YAML

# OAuth2/OIDC provider + application for repospawner (the internal repository
# provisioning admin tool, served at
# https://repospawner.k8s.syd1.au.unkin.net (cluster hostname) and
# https://repospawner.unkin.net (external hostname) in the repospawner namespace).
# An oauth2-proxy in front of the UI performs the OIDC login; access is gated on
# the user's hierarchical ak_groups claim (akP-repospawner-admin).
# client_secret is read from Vault (seeded out of band), never committed.
name: repospawner
authorization_flow: default-provider-authorization-implicit-consent
invalidation_flow: default-provider-invalidation-flow
client_type: confidential
client_id: repospawner
launch_url: https://repospawner.unkin.net/
client_secret_vault:
mount: kv
path: kubernetes/namespace/repospawner/default/oauth-credentials
scope_mappings:
- goauthentik.io/providers/oauth2/scope-openid
- goauthentik.io/providers/oauth2/scope-email
- goauthentik.io/providers/oauth2/scope-profile
redirect_uris:
- matching_mode: strict
url: https://repospawner.k8s.syd1.au.unkin.net/oauth2/callback
- matching_mode: strict
url: https://repospawner.unkin.net/oauth2/callback