Add Authentik OIDC SSO as the default human login for OpenBao #147

Merged
benvin merged 3 commits from benvin/auth-oidc into master 2026-08-30 22:38:05 +10:00
3 changed files with 78 additions and 0 deletions
Showing only changes of commit 7c51605f9a - Show all commits
+19
View File
@@ -0,0 +1,19 @@
# Allow full administration of the OIDC auth backend (mount config and login
# roles), mirroring policies/auth/ldap/admin.yaml. sys/auth/* already covers
# enabling the mount itself; this covers writing auth/oidc/config and
# auth/oidc/role/*.
---
rules:
- path: "auth/oidc/*"
capabilities:
- create
- update
- read
- delete
- list
auth:
approle:
- tf_vault
k8s/au/syd1:
- woodpecker_terraform_vault
+38
View File
@@ -0,0 +1,38 @@
# Allow the deployer to manage external identity groups and their aliases, which
# is how OIDC group membership (the ak_groups claim) maps onto Vault policies.
# Both the collection endpoints and the per-id endpoints are needed: create posts
# to identity/group, subsequent reads and updates address identity/group/id/<id>.
---
rules:
- path: "identity/group"
capabilities:
- create
- update
- path: "identity/group/*"
capabilities:
- create
- update
- read
- delete
- list
- path: "identity/group-alias"
capabilities:
- create
- update
- path: "identity/group-alias/*"
capabilities:
- create
- update
- read
- delete
- list
- path: "identity/lookup/group"
capabilities:
- create
- update
auth:
approle:
- tf_vault
k8s/au/syd1:
- woodpecker_terraform_vault
@@ -0,0 +1,21 @@
# Let the terraform-vault deployer read the OpenBao OIDC client credentials that
# Authentik's provider module generates and writes here (terraform_authentik owns
# kv/service/authentik/* — see policies/kv/service/authentik/write.yaml). The
# deployer consumes client_id/client_secret to configure the auth/oidc backend.
#
# OIDC becomes the default human auth path; approle and k8s (CI and agents) plus
# the break-glass root path are unchanged.
#
# AppRole capabilities are fixed at login, so this grant must be applied before
# the PR that adds the auth/oidc modules.
---
rules:
- path: "kv/data/service/authentik/oidc-vault"
capabilities:
- read
auth:
approle:
- tf_vault
k8s/au/syd1:
- woodpecker_terraform_vault