Security and privacy · Edition No. 22 · 16 Sep 2026

kanidm/kanidm

One identity server with its own embedded storage, speaking OAuth2, OpenID Connect and LDAP, with passkeys as the normal way in.

← Security and privacyRead the whole edition →

5.4k stars · MPL-2.0 · v1.11.2 (2026-09-11), read from /releases/latest; the date showed no year and falls in the past, so 2026. That release fixes a moderate LDAP bind issue described on its own page · Track this in Scout

One identity server with its own embedded storage, speaking OAuth2, OpenID Connect and LDAP, with passkeys as the normal way in.

▶Repo detailsthe review · specs · pros & cons · install

What it is

An identity management server written in Rust. It speaks OAuth2 and OpenID Connect for modern applications and LDAP for older ones, and it ships as a single service with its own embedded database rather than a stack of parts. It supports passkeys, one-time codes, groups, and rules about which group may enter which application.

What it is good for. A solo builder whose server has quietly grown five private screens: a container manager, a log viewer, a monitoring page, a database tool, an invoice app. The problem it removes is five sets of credentials and no way to revoke them at once. When somebody stops helping you, you switch off one account instead of remembering five. This ledger already holds two answers to the same question, and you should pick one: Logto (Edition 11 #4) is aimed at signing in the customers of a product, and Pocket ID (Edition 18 #4) is the small passkey-only option. Kanidm sits between them and is stricter than either about security defaults.

Stars5.4k
LicenceMPL-2.0
Latestv1.11.2 (2026-09-11), read from /releases/latest; the date showed no year and falls in the past, so 2026. That release fixes a moderate LDAP bind issue described on its own page
Good
  • One program, with its own storage. There is no separate database, cache or queue to run and back up.
  • Passkeys are treated as the normal way in rather than an extra, and the project takes a hard line on weak settings.
  • MPL-2.0, which only asks you to publish changes you make to the project's own files. Building a paid product around it is fine.
Watch for
  • It refuses to run without HTTPS and a valid certificate, so there is no five-minute version to try.
  • The strict defaults mean some older applications simply will not connect, and the answer is usually to change the application.
  • It is smaller than Authentik or Authelia, so there are fewer step-by-step guides when you get stuck.
Similar repositories
Install
sudo mkdir -p /opt/kanidm/data
# Write /opt/kanidm/server.toml with your domain, your origin URL,
# and the paths to your certificate and key. The exact fields are listed at
#   https://kanidm.github.io/kanidm/stable/server_configuration.html
sudo docker run -d --name kanidm \
  -p 443:8443 \
  -v /opt/kanidm:/data \
  docker.io/kanidm/server:latest
# Recover the first administrator account:
sudo docker exec -i -t kanidm kanidmd recover-account admin
Screenshots
kanidm/kanidm: GitHub preview card

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.