Onboard mediamark to Authentik OIDC #29

Merged
benvin merged 2 commits from benvin/mediamark-oidc into main 2026-08-29 21:55:34 +10:00
3 changed files with 34 additions and 1 deletions
@@ -0,0 +1,4 @@
# Permission group akP-mediamark-user (name = filename). Grants user access to
# mediamark: bound to the mediamark application, gating the kids-content
# marking UI.
application: mediamark
+26
View File
@@ -0,0 +1,26 @@
# OAuth2/OIDC provider + application for mediamark (the Go web UI for marking
# media as kids content, served at https://mediamark.unkin.net (external
# hostname) and https://mediamark.k8s.syd1.au.unkin.net (cluster hostname) in
# its own mediamark namespace). An oauth2-proxy in front of the UI performs the
# OIDC login with a relative redirect, so both hostnames must be registered;
# access is gated on the user's hierarchical ak_groups claim
# (akP-mediamark-user).
# client_secret is read from Vault (seeded out of band), never committed.
name: mediamark
authorization_flow: default-provider-authorization-implicit-consent
invalidation_flow: default-provider-invalidation-flow
client_type: confidential
client_id: mediamark
launch_url: https://mediamark.unkin.net/
client_secret_vault:
mount: kv
path: kubernetes/namespace/mediamark/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://mediamark.k8s.syd1.au.unkin.net/oauth2/callback
- matching_mode: strict
url: https://mediamark.unkin.net/oauth2/callback
+4 -1
View File
@@ -2,7 +2,10 @@
# adult ("fafflix") and kids ("cheeztv") services, so this role nests both # adult ("fafflix") and kids ("cheeztv") services, so this role nests both
# per-service entitlements. Membership propagates child -> parent, so a member # per-service entitlements. Membership propagates child -> parent, so a member
# appears in both permission groups in the hierarchical `ak_groups` claim and the # appears in both permission groups in the hierarchical `ak_groups` claim and the
# media proxy routes/authorizes them for fafflix and cheeztv. # media proxy routes/authorizes them for fafflix and cheeztv. Adults also curate
# which titles are kids content, so the role nests akP-mediamark-user for access
# to the mediamark UI.
permissions: permissions:
- akP-media-fafflix - akP-media-fafflix
- akP-media-cheeztv - akP-media-cheeztv
- akP-mediamark-user