405dede578ef14d8aa1ce98d22d01c27a48846a2
The ArgoCD mobile app and CLI are native clients that cannot hold a secret, and Authentik derives the iss claim from the application slug, so they cannot have a client of their own either. Serve all three clients from the one provider. - switch client_type to public - add argocd://auth/callback as a strict redirect URI
terraform-authentik
Terraform configuration for managing the Authentik identity provider at identity.unkin.net.
Managed Resources
- Groups — roles and group hierarchy (accounts themselves are created elsewhere)
- User role membership — which
akR-*roles a human holds (seeconfig/users/) - SAML providers — SAML application integrations
- OAuth2/OIDC providers — OAuth2 and OpenID Connect integrations
- LDAP providers — LDAP provider and outpost configuration
- Applications — application definitions linked to providers
- Service accounts — machine identities with RBAC roles and API tokens (keys published to Vault kv)
Configuration
Resources are defined as YAML files under config/:
config/
├── groups/ # Group definitions
├── providers_saml/ # SAML provider definitions
├── providers_oauth2/ # OAuth2/OIDC provider definitions
├── providers_ldap/ # LDAP provider definitions
├── service_accounts/ # Automation service accounts + API tokens
└── users/ # Human role membership (authoritative per named role)
Usage
make plan # init + plan
make apply # init + plan + apply
make format # format all .tf and .hcl files
Authentication
Set VAULT_ROLEID for local AppRole auth, or VAULT_AUTH_METHOD=kubernetes for CI.
Description
Languages
HCL
94.8%
Makefile
5.2%