--- # Non-secret oauth2-proxy configuration (client_id/secret/cookie_secret come # from the oauth-credentials Secret). Single auth front for mediamark on both # host names; access is gated here on the akP-mediamark-user Authentik group and # re-checked by the app from X-Forwarded-Groups. apiVersion: v1 kind: ConfigMap metadata: name: mediamark-oauth2-env namespace: mediamark data: OAUTH2_PROXY_HTTP_ADDRESS: "0.0.0.0:4180" OAUTH2_PROXY_PROVIDER: "oidc" OAUTH2_PROXY_OIDC_ISSUER_URL: "https://identity.unkin.net/application/o/mediamark/" # Relative (host-less) redirect URL: with reverse-proxy mode on, oauth2-proxy # derives scheme+host per request from X-Forwarded-Proto/Host, so the same # deployment serves BOTH the external mediamark.unkin.net and internal # mediamark.k8s.syd1.au.unkin.net callbacks. Both absolute callback URIs are # registered on the Authentik provider (terraform-authentik, separate PR). OAUTH2_PROXY_REDIRECT_URL: "/oauth2/callback" OAUTH2_PROXY_UPSTREAMS: "http://mediamark.mediamark.svc.cluster.local:8080/" OAUTH2_PROXY_SCOPE: "openid email profile ak_groups" # Populate session.Groups from the Authentik ak_groups claim; pass-user-headers # then emits it as a single comma-joined X-Forwarded-Groups header. OAUTH2_PROXY_OIDC_GROUPS_CLAIM: "ak_groups" OAUTH2_PROXY_ALLOWED_GROUPS: "akP-mediamark-user" # Forward identity + groups to mediamark as X-Forwarded-{User,Email,Groups}. # NOTE: set-xauthrequest is intentionally NOT set -- it only populates # auth_request *response* headers, which never reach a proxied upstream. OAUTH2_PROXY_PASS_USER_HEADERS: "true" OAUTH2_PROXY_EMAIL_DOMAINS: "*" # Authentik hardcodes email_verified=false in the id_token; authorization is # enforced via ak_groups, so accepting the unverified email is safe. OAUTH2_PROXY_INSECURE_OIDC_ALLOW_UNVERIFIED_EMAIL: "true" OAUTH2_PROXY_COOKIE_SECURE: "true" # One cookie domain per host (a single parent-domain cookie can't span # unkin.net and k8s.syd1.au.unkin.net cleanly); oauth2-proxy picks the domain # matching the request host. Whitelist both so post-auth `rd` redirects to # either front door are honoured. OAUTH2_PROXY_COOKIE_DOMAINS: "mediamark.unkin.net,mediamark.k8s.syd1.au.unkin.net" OAUTH2_PROXY_WHITELIST_DOMAINS: "mediamark.unkin.net,mediamark.k8s.syd1.au.unkin.net" OAUTH2_PROXY_REVERSE_PROXY: "true" OAUTH2_PROXY_PROVIDER_CA_FILES: "/etc/ssl/combined/ca-certificates.crt" OAUTH2_PROXY_CODE_CHALLENGE_METHOD: "S256" OAUTH2_PROXY_SKIP_PROVIDER_BUTTON: "true"