feat: add homelab-wide Authentik RBAC model and k8s OIDC auth wiring

Adds permissions claim + per-service admin groups in Authentik, scoped
Role/RoleBinding per service, public PKCE kubernetes OAuth2 client, and
kube-apiserver OIDC extraArgs. Also fixes paperless OIDC signup permissions
via adapter override and adds CoreDNS rewrite for authentik.riotpiao.com.
This commit is contained in:
Story Crater Bot
2026-08-25 15:03:44 -07:00
parent 8b49b347b5
commit 89f01b6f2e
17 changed files with 608 additions and 11 deletions
@@ -0,0 +1,31 @@
# Scoped operator access for llm-admins: the 4 predictor Deployments only -
# no configmap/secret exists in this namespace today. Inert until
# kube-apiserver's OIDC wiring lands.
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: llm-serving-operator
namespace: llm-serving
rules:
- apiGroups: ["apps"]
resources: ["deployments"]
resourceNames:
- reasoning-predictor
- ornith-predictor
- embeddings-predictor
- reranker-predictor
verbs: ["get", "list", "watch", "update", "patch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: llm-admins-binding
namespace: llm-serving
subjects:
- kind: Group
name: "oidc:llm-admins"
apiGroup: rbac.authorization.k8s.io
roleRef:
kind: Role
name: llm-serving-operator
apiGroup: rbac.authorization.k8s.io