3.5 KiB
title: Kanidm created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, authentication, sso, oidc, ldap, idm, rust] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Authentication, https://github.com/kanidm/kanidm]
🔐 Kanidm
Identity Management moderne écrit en Rust, performant et sécurisé, supportant OIDC, LDAP, OAuth2 et WebAuthn.
📋 Informations Générales
| Attribut | Valeur |
|---|---|
| Nom | Kanidm |
| Slug | app-kanidm |
| Description | IdM moderne écrit en Rust, sécurisé et performant |
| Site officiel | https://kanidm.com |
| Repository | https://github.com/kanidm/kanidm |
| Stars | 5 032 ⭐ |
| Licence | MPL 2.0 |
| Langage principal | Rust |
| Catégorie | Authentication |
| Tags | [catalogue, authentication, sso, oidc, ldap, idm, rust] |
📝 Description
Kanidm est un serveur d'Identity Management moderne, écrit en Rust par William Brown (SUSE/Alibaba). Le projet vise à fournir un IdM sécurisé, performant et ergonomique pour les organisations, en rupture avec la complexité de OpenLDAP ou de 389 Directory Server.
Kanidm supporte OIDC, OAuth 2.0, LDAP (en option), WebAuthn/FIDO2, TOTP et la fédération d'identités (SAML, Google, etc.). Le projet met l'accent sur la sécurité by design : bindings TLS obligatoires, durcissement SSH automatique pour les comptes avec clés, account policies strictes, event log détaillé.
Kanidm se distingue de Keycloak/389-DS par sa performance (Rust, async, single binary), sa sécurité (memory-safe, type-safe) et son API moderne (REST + CLI kanidm). C'est le choix idéal pour des organisations qui veulent un IdM moderne, sans la JVM, avec un focus sécurité. Documentation très complète.
🚀 Installation
Via Docker (recommandé)
# docker-compose.yml
services:
kanidm:
image: kanidm/server:latest
hostname: kanidm-server
command: ["kanidmd", "server", "-c", "/data/server.toml"]
ports:
- "8443:8443"
volumes:
- ./kanidm-data:/data
environment:
KANIDM_DOMAIN: example.com
KANIDM_ORIGIN: https://idm.example.com
Installation manuelle
Single binary Rust, kanidmd server. Binaire CLI kanidm pour l'administration. Voir https://kanidm.com/docs.
⚙️ Configuration
- Domain : nom DNS de l'instance
- OIDC Clients : enregistrement des apps
- Groups / Roles : RBAC natif
- Service Accounts : comptes techniques (LDAP, mail, etc.)
- Account Policies : MFA obligatoire, password policy
- WebAuthn : passkeys comme premier facteur
🔗 Alternatives
- 389 Directory Server — IdM traditionnel Red Hat
- OpenLDAP — Annuaire historique, complexe
- Keycloak — IdM enterprise en Java, plus complet
- authentik — IdM moderne en Python/Go
🔒 Sécurité
- Activer HTTPS (HSTS, certificats valides)
- Activer WebAuthn comme premier facteur
- Activer le MFA obligatoire sur les comptes admin
- Durcir le système (systemd unit, AppArmor)
- Mettre à jour régulièrement (release fréquente)
📚 Ressources
- Site officiel : https://kanidm.com
- Repository GitHub : https://github.com/kanidm/kanidm
- Documentation : https://kanidm.com/docs/
🔗 Pages Liées
- cat-authentication (n'existe pas encore, OK)
- app-keycloak — IdM enterprise
- app-authentik — IdM moderne
- app-pocket-id — OIDC simple
- app-traefik
- recettes-docker-compose
- securisation-home-lab