authentik-application

authentik-application

authentik-application

Version: 0.4.3 Type: application

A Chart to deploy a secret for the authentik blueprint-sidecar.

Maintainers

NameEmailUrl
WrenIXhttps://wrenix.eu

Pre-Requirement

Usage of https://github.com/goauthentik/helm/pull/146

or manual:

Install authentik with this values.yaml:

serviceAccount:
  create: true

additionalContainers:
  - name: sidecar-blueprints
    image: "ghcr.io/kiwigrid/k8s-sidecar:1.25.1"
    env:
      - name: "FOLDER"
        value: "/blueprints/sidecar"
      - name: "LABEL"
        value: "goauthentik_blueprint"
      - name: "LABEL_VALUE"
        value: "1"
      # - name: "NAMESPACE"
      #   value: "ALL"
      - name: "RESOURCE"
        value: "both"
      - name: "UNIQUE_FILENAMES"
        value: "true"
    volumeMounts:
      - name: sidecar-blueprints
        mountPath: /blueprints/sidecar

volumeMounts:
  - name: sidecar-blueprints
    mountPath: /blueprints/sidecar

volumes:
  - name: sidecar-blueprints
    emptyDir: {}

And create an Role and bind them on to the ServiceAccount to read secrets:

---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: authentik-blueprint-sidecar
rules:
  - apiGroups: [""]
    resources: ["configmaps", "secrets"]
    verbs: ["get", "watch", "list"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: authentik-blueprint-sidecar
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: authentik-blueprint-sidecar
subjects:
  - kind: ServiceAccount
    name: authentik

Usage

Helm must be installed and setup to your kubernetes cluster to use the charts. Refer to Helm’s documentation to get started. Once Helm has been set up correctly, fetch the charts as follows:

helm pull oci://codeberg.org/wrenix/helm-charts/authentik-application

You can install a chart release using the following command:

helm install authentik-application-release oci://codeberg.org/wrenix/helm-charts/authentik-application --values values.yaml

To uninstall a chart release use helm’s delete command:

helm uninstall authentik-application-release

Values

KeyTypeDefaultDescription
blueprint.application.bindPolicyIDstringniluuid for bindPolicyID for group - if not set generated on secret for be stable (or groups: [] filled)
blueprint.application.descriptionstring""description of application
blueprint.application.groupstring""put this application in authentik in group
blueprint.application.iconstring""icon of application (url)
blueprint.application.launchURLstring""
blueprint.application.namestring""application name in menu
blueprint.application.openInNewTabboolfalseopen application in new tab
blueprint.application.policyEngineModestring"any"
blueprint.application.publisherstring""publisher of application
blueprint.application.slugstring"app-name"application slug
blueprint.authentik.domainstring"https://auth.wrenix.eu"domain to authentik, used in generated url (like issuer)
blueprint.groupsstringnilauthentik groups created / give access to this application disable any groups by set groups: [] (to a slice) example: - slug: “app: grafana-admin” parent: “app: infra” bindID: uuid
blueprint.labelsobject{"goauthentik_blueprint":"1"}label of generated secret with blueprint
blueprint.provider.authorizationFlowstring"default-provider-authorization-implicit-consent"
blueprint.provider.enabledbooltruecreat an provider for authentification (otherwise just a like in menu is created)
blueprint.provider.namestring""
blueprint.provider.oidc.clientIDstringnilclient id - generated if secret enabled
blueprint.provider.oidc.clientSecretstringnilclient secret - generated if secret enabled
blueprint.provider.oidc.clientTypestring"confidential"
blueprint.provider.oidc.redirectURLstring""
blueprint.provider.oidc.scopesstringnilScope
blueprint.provider.oidc.signingKeystring""Need for non-curve / RSA
blueprint.provider.proxy.cookieDomainstring""
blueprint.provider.proxy.externalHoststringnil
blueprint.provider.proxy.ingress.annotationslist[]annotations to ingress for outpost
blueprint.provider.proxy.ingress.backendstring"authentik"service backend to authentik
blueprint.provider.proxy.ingress.domainstringnildomain of application (where outpost should be deployed)
blueprint.provider.proxy.ingress.enabledboolfalsedeploy ingress on application domain for e.g. logout (WIP)
blueprint.provider.proxy.ingress.tlslist[]tls to ingress for outpost
blueprint.provider.proxy.skipPathRegexstring""
blueprint.provider.samlstringnil
blueprint.provider.typestring"oidc"type of application connection, current support: oidc, saml and proxy
secret.labelsobject{}label of secret to store generated secret
secret.namestring""name of secret to store generated secret (like clientI)

Autogenerated from chart metadata using helm-docs