Open source Kubernetes operator for Kanidm
Manage Kanidm on Kubernetes with confidence.
Deploy, configure, and operate Kanidm clusters and identity resources through the Kubernetes API. Built for declarative workflows, predictable reconciliation, and GitOps.
Kanidm is the identity server. Kaniop operates it on Kubernetes and reconciles identity resources from GitOps workflows.
Open source · Kubernetes-native · Built in Rust
apiVersion: kaniop.rs/v1beta1
kind: Kanidm
metadata:
name: my-idm
spec:
domain: my-idm.localhost
replicaGroups:
- name: default
replicas: 1
apiVersion: kaniop.rs/v1beta1
kind: KanidmPersonAccount
metadata:
name: alice
spec:
kanidmRef:
name: my-idm
personAttributes:
displayname: Alice Smith
mail:
- alice@example.com
apiVersion: kaniop.rs/v1beta1
kind: KanidmOAuth2Client
metadata:
name: my-webapp
spec:
kanidmRef:
name: my-idm
displayname: My Web Application
origin: https://myapp.example.com
redirectUrl:
- https://myapp.example.com/oauth2/callback
CAPABILITIES
Everything you need to operate Kanidm
Bring identity management into the same declarative infrastructure workflows you already use across your Kubernetes platform.
Cluster management
Deploy and reconcile Kanidm clusters, replica groups, configuration, and Kubernetes workloads.
Cluster documentationDeclarative identities
Manage persons, groups, OAuth2 clients, and service accounts as Kubernetes resources.
Identity resourcesGitOps workflows
Review identity changes in Git and let your existing reconciliation tools apply them.
Explore the conceptsConservative operations
Coordinate lifecycle changes while respecting Kanidm's data and replication semantics.
Safety architectureBackup & restore Experimental
Explore native backup and recovery workflows. Not yet supported for production disaster recovery.
Limitations and statusObservability
Understand controller behavior through resource status, Kubernetes events, and telemetry.
Cluster operationsARCHITECTURE
Kubernetes-native by design.
Kaniop continuously reconciles Kubernetes custom resources. Kubernetes defines the desired deployment state, Kaniop coordinates operations, and Kanidm remains responsible for identity, persistence, and replication correctness.
Explore the architectureQUICKSTART
Get started with Kaniop.
Install the operator with Helm, then use the documented Kubernetes resources to deploy and manage Kanidm.
- 1Install the operatorUse the official Helm chart from GHCR.
- 2Declare a Kanidm clusterApply the manifests in the quickstart guide.
- 3Manage identity as codeAdd persons, groups, and OAuth2 clients through CRDs.
helm install --create-namespace \
--namespace kaniop --wait kaniop \
oci://ghcr.io/pando85/helm-charts/kaniop
kubectl get pods -n kaniop
OPEN SOURCE
Built openly. Improved together.
Explore the source, follow releases, report issues, and help shape Kaniop.
