
kanidm v1.11.2
Plataforma de gestão de identidade auto-hospedada que fornece passkeys WebAuthn, SSO OAuth2/OIDC, distribuição de chaves SSH, integração RADIUS e LDAP para autenticação moderna.
Kanidm - Gestão de Identidade Simples e Segura

Sobre
O Kanidm é uma plataforma de gestão de identidade simples e segura, permitindo que outras aplicações e serviços transfiram para o Kanidm o desafio de autenticar e armazenar identidades.
O objetivo deste projeto é ser um provedor de identidade completo, cobrindo o mais amplo conjunto possível de requisitos e integrações. Você não deve precisar de nenhum outro componente (como o Keycloak) ao usar o Kanidm — nós já temos tudo o que você precisa!
Para conseguir isso, dependemos fortemente de padrões rígidos, configuração simples e componentes autossustentáveis. Isso permite que o Kanidm atenda desde pequenos laboratórios domésticos, famílias, pequenas empresas, até as maiores necessidades empresariais.
Se você quer hospedar o seu próprio serviço de autenticação, o Kanidm é para você!
Recursos Suportados
O Kanidm suporta:
- Passkeys (WebAuthn) para autenticação criptográfica segura
- Passkeys atestadas para ambientes de alta segurança
- Portal de Aplicações que permite fácil acesso a aplicações vinculadas
- Provedor de autenticação OAuth2/OIDC para SSO
- Acesso a serviços OAuth2/OIDC com serviços de troca de tokens
- Integração Linux/Unix com autenticação offline protegida por TPM
- Distribuição de chaves SSH para sistemas Linux/Unix
- RADIUS para autenticação em rede e VPN
- Gateway LDAPs somente leitura para sistemas legados
- Ferramentas CLI completas para administração
- Alta disponibilidade com dois nós usando replicação de banco de dados
- Uma WebUI para autoatendimento do usuário
- E muito mais!
Documentação / Primeiros Passos / Instalação
Se você quiser saber mais sobre o que o Kanidm pode fazer, leia a nossa documentação.
Também temos um conjunto de diretrizes de suporte para o que a equipe do projeto irá suportar.
Código de Conduta / Ética
Todas as interações com o projeto são cobertas pelo nosso código de conduta.
Quando desenvolvemos recursos, seguimos as diretrizes do nosso projeto sobre direitos e ética.
Mantemos uma política de uso de IA/LLM para interações com este projeto.
Contato / Perguntas
Temos um canal comunitário do Gitter com tecnologia Matrix, onde os membros do projeto estão sempre dispostos a conversar e responder perguntas. Alternativamente, você pode abrir uma nova discussão no GitHub.
O que significa Kanidm?
Kanidm é uma junção de 'kani' e 'idm'. Kani é a palavra japonesa para caranguejo, relacionada ao mascote do Rust, Ferris, o caranguejo. Gestão de identidade é frequentemente abreviada como 'idm', e é um termo comum no setor para provedores de autenticação.
Kanidm é pronunciado como "kar - nee - dee - em".
Hino do Kanidm
Um hino é uma canção popular, especialmente uma canção de rock que parece resumir as atitudes ou sentimentos associados a um período ou grupo social.
O hino do Kanidm é Crab Rave - Noisestorm
Comparação com outros serviços
LLDAP
LLDAP é um projeto semelhante, focado em fornecer um servidor LDAP pequeno e fácil de administrar, com um portal web de administração. Tanto o LLDAP quanto o Kanidm usam as ligações LDAP do Kanidm e compartilham muitas ideias de design em comum.
A principal vantagem do Kanidm sobre o LLDAP é seu conjunto de recursos nativos mais amplo, incluindo suporte nativo a OAuth2 e OIDC. Em contraste, o LLDAP exige integração com um portal externo como o Keycloak para oferecer esses recursos. No entanto, a simplicidade do LLDAP — com menos recursos — pode tornar sua implantação e gestão mais fáceis em determinados casos de uso.
Enquanto o LLDAP oferece uma Web UI simples como principal interface de gestão de usuários, o Kanidm atualmente oferece funcionalidades administrativas principalmente por meio de sua CLI, com sua Web UI projetada mais para interações do usuário do que para administração.
Se o Kanidm parecer complexo demais para as suas necessidades, o LLDAP é uma alternativa menor e mais simples. Mas se você quiser uma solução mais rica em recursos pronta para uso, o Kanidm provavelmente será a melhor opção.
389-ds / OpenLDAP
Tanto o 389 Directory Server (389-ds) quanto o OpenLDAP são servidores LDAP de uso geral. Eles fornecem apenas funcionalidade LDAP, então você precisa fornecer seus próprios componentes de Gestão de Identidade (IDM) — como um portal OIDC, Web UI de autoatendimento, ferramentas de linha de comando para administração e muito mais.
Se você precisa de máxima personalização na sua implantação LDAP, o 389-ds ou o OpenLDAP podem ser escolhas melhores. No entanto, se você prefere um serviço fácil de configurar e focado especificamente em IDM, o Kanidm é a opção superior.
O Kanidm se inspira tanto no 389-ds quanto no OpenLDAP e já iguala ou supera o 389-ds em desempenho e escalabilidade do serviço de diretório, além de oferecer um conjunto de recursos mais rico.
FreeIPA
O FreeIPA é um sistema abrangente de gestão de identidade para Linux/Unix, reunindo muitos serviços, incluindo LDAP, Kerberos, DNS e uma Autoridade Certificadora.
No entanto, o FreeIPA é complexo, composto por inúmeros componentes e configurações, o que gera maior uso de recursos e sobrecarga administrativa durante a instalação e atualizações.
O Kanidm tem como objetivo oferecer a riqueza de recursos do FreeIPA, mas com uma pegada de recursos mais leve e gestão mais simples. Em benchmarks com 3.000 usuários e 1.500 grupos, o Kanidm demonstrou operações de busca aproximadamente três vezes mais rápidas e modificações e adições cinco vezes mais rápidas (os resultados podem variar, mas o Kanidm geralmente supera o FreeIPA em velocidade).
Se você quer uma solução IDM completa que seja mais fácil de gerenciar e mais eficiente, vale a pena considerar o Kanidm.
Keycloak
O Keycloak é um provedor OIDC/OAuth2/SAML que pode adicionar autenticação WebAuthn por cima de sistemas IDM existentes. Embora possa funcionar como uma solução IDM autônoma, é comumente usado junto com um servidor LDAP ou backend semelhante.
Implantar o Keycloak exige configuração e experiência significativas. Suas extensas opções de personalização para fluxos de autenticação podem tornar a configuração inicial desafiadora.
O Kanidm não exige o Keycloak para fornecer OAuth2 e outros serviços. Ele integra muitos desses recursos de uma forma mais simples e simplificada, pronta para uso.
Rauthy
O Rauthy é um provedor OIDC mínimo compatível com WebAuthn — usando algumas das mesmas bibliotecas do Kanidm.
No entanto, o Rauthy foca exclusivamente em OIDC e não oferece suporte a casos de uso adicionais, como RADIUS ou autenticação Unix.
Se você precisa de um provedor mínimo apenas OIDC, o Rauthy é uma excelente escolha. Mas se você precisar de um conjunto de recursos mais amplo, o Kanidm é a melhor opção.
Authentik / Authelia / Zitadel
O Authentik (escrito em Python), o Authelia e o Zitadel (ambos escritos em Go) são provedores IDM semelhantes ao Kanidm em muitos aspectos. No entanto, os três têm suporte mais fraco para autenticação Unix e não fornecem as políticas avançadas de autenticação nem os recursos de Atestação WebAuthn que o Kanidm oferece.
Além disso, esses projetos dependem de bancos de dados SQL externos, como PostgreSQL, o que pode introduzir possíveis pontos únicos de falha e gargalos de desempenho. Em contraste, o Kanidm usa seu próprio banco de dados de alto desempenho e sistema de replicação, desenvolvido com base na experiência com servidores LDAP empresariais.
Primeiros Passos para Desenvolvedores
Se você quer contribuir com o Kanidm, há um guia para desenvolvedores de primeiros passos. IDM é um tópico diverso e incentivamos contribuições de vários tipos ao projeto, vindas de pessoas de todas as origens. Por favor, observe que não aceitamos conteúdo gerado por IA nas contribuições.
Ao desenvolver o servidor, você deve consultar a documentação do commit mais recente.