--- apiVersion: v1 kind: ConfigMap metadata: name: authentik-blueprints-percona-everest namespace: authentik labels: goauthentik.io/blueprint: "true" data: percona-everest.yaml: |- version: 1 metadata: name: percona-everest-oidc labels: blueprints.goauthentik.io/instantiate: "true" entries: # ============================================================================ # PERCONA EVEREST OIDC PROVIDER # ============================================================================ # Everest uses OIDC with PKCE (public client) for authentication. # The client_id must match server.oidc.clientId in percona-everest/values.yaml. # ============================================================================ # Custom scope mapping to inject jti claim (required by Everest) - model: authentik_providers_oauth2.scopemapping id: percona-everest-jti-mapping state: present identifiers: managed: goauthentik.io/providers/proxy/scope-percona-everest-jti attrs: name: "Percona Everest JTI Claim" scope_name: "everest-jti" expression: | import uuid return {"jti": str(uuid.uuid4())} - model: authentik_providers_oauth2.oauth2provider id: percona-everest-provider state: present identifiers: name: Percona Everest attrs: name: Percona Everest client_id: percona-everest-oidc-client-id-static-2025 authorization_flow: !Find [authentik_flows.flow, [slug, default-provider-authorization-implicit-consent]] authentication_flow: !Find [authentik_flows.flow, [slug, default-authentication-flow]] invalidation_flow: !Find [authentik_flows.flow, [slug, default-provider-invalidation-flow]] redirect_uris: - url: "https://everest.kube.huskypup.net/login-callback" matching_mode: strict property_mappings: - !Find [authentik_providers_oauth2.scopemapping, [scope_name, openid]] - !Find [authentik_providers_oauth2.scopemapping, [scope_name, email]] - !Find [authentik_providers_oauth2.scopemapping, [scope_name, profile]] - !KeyOf percona-everest-jti-mapping include_claims_in_id_token: true client_type: public access_code_validity: "minutes=10" access_token_validity: "hours=1" refresh_token_validity: "days=30" signing_key: !Find [authentik_crypto.certificatekeypair, [name, authentik Self-signed Certificate]] # ============================================================================ # PERCONA EVEREST APPLICATION # ============================================================================ - model: authentik_core.application id: percona-everest-application state: present identifiers: slug: percona-everest attrs: name: Percona Everest slug: percona-everest policy_engine_mode: any provider: !KeyOf percona-everest-provider meta_launch_url: "https://everest.kube.huskypup.net"