Keycloak vs. Authentik: Identity Provider für Self-Hosting 2025
Wer seine Dienste selbst hostet und Single Sign-On (SSO) oder zentrales Identity Management braucht, steht früher oder später vor der Wahl: Keycloak oder Authentik? Beide sind Open-Source Identity Provider — aber für sehr unterschiedliche Zielgruppen.
Was ist ein Identity Provider?
Ein Identity Provider (IdP) ist die zentrale Stelle, die Benutzeridentitäten verwaltet und anderen Anwendungen sagt: "Ja, dieser Nutzer ist wer er behauptet zu sein." Protokolle wie OIDC (OpenID Connect), OAuth2, und SAML verbinden den IdP mit deinen Anwendungen.
Anwendungsfälle:
- SSO: Einmal anmelden, alle Dienste nutzen (Gitea, Nextcloud, Grafana, etc.)
- MFA: Zentrale 2FA-Verwaltung für alle Services
- Social Login: "Mit GitHub anmelden" für eigene Apps
- Enterprise Directory: LDAP/Active Directory Integration
Keycloak: Der Enterprise-Standard
Keycloak wird von Red Hat entwickelt und ist seit 2014 der De-facto-Standard für Identity Management im Enterprise-Bereich. Er implementiert OAuth2, OIDC, und SAML vollständig.
Stärken von Keycloak
Vollständigkeit: Keycloak implementiert jeden Standard vollständig. SAML 2.0, OIDC, OAuth2, LDAP-Sync, Kerberos — alles vorhanden.
Realms: Keycloak unterstützt mehrere isolierte "Realms" in einer Instanz — perfekt für Multi-Tenant-Setups oder wenn man mehrere Kundenprojekte zentral verwaltet.
Admin-Konsole: Ausgereiftes Web-Dashboard für User-Management, Roles, Groups, Client-Konfiguration.
Themes: Anpassbare Login-Seiten via FreeMarker-Templates.
Community: Riesige Community, viele Tutorials, Helm Charts, Operator für Kubernetes.
Schwächen von Keycloak
Ressourcenhunger: Keycloak (Java + WildFly/Quarkus) braucht mindestens 1-2 GB RAM im Betrieb. Auf einem kleinen Hetzner-VPS schmerzt das.
Konfigurationskomplexität: Keycloak hat unzählige Einstellungen. Das erste Setup eines OIDC-Clients dauert erfahrungsgemäß 1-2 Stunden inklusive Debugging.
Docs veralten: Dokumentation hat Lücken, besonders nach dem Wechsel von WildFly zu Quarkus.
Update-Aufwand: Keycloak-Upgrades sind nicht immer smooth — Breaking Changes passieren.
Authentik: Der moderne Newcomer
Authentik (2020) ist ein in Python (Django) geschriebener Identity Provider, der explizit für Self-Hosters und moderne DevOps-Setups designt wurde.
Stärken von Authentik
Modern und schön: Authentiks Benutzeroberfläche ist wesentlich moderner als Keycloak — intuitiv, aufgeräumt, dunkel-mode-fähig.
Flows-System: Authentiks "Flows" ermöglichen komplexe Auth-Abläufe visuell zu designen — MFA, Enrollment, Recovery können ohne Code angepasst werden.
Leichtgewichtiger: Authentik läuft mit ~512 MB RAM, was für kleine Self-Hosting-Setups ein echtes Plus ist.
Proxy Provider: Authentik kann als Forward-Auth-Proxy für Nginx/Traefik fungieren — Anwendungen, die kein OIDC sprechen, werden trotzdem durch Authentik geschützt.
LDAP Provider: Authentik kann als LDAP-Server fungieren, sodass ältere Anwendungen transparent integriert werden.
Einfaches Setup: Docker-Compose in 15 Minuten up and running.
Schwächen von Authentik
- Jünger: Weniger Erfahrungswerte für sehr große Deployments
- SAML: Unterstützt SAML, aber weniger ausgereift als Keycloak
- Multi-Tenancy: Keine nativen "Realms" wie Keycloak — unterschiedliche Mandanten brauchen separate Instanzen
- Kleineres Ökosystem: Weniger Community-Tutorials als Keycloak
Direkter Vergleich
| Kriterium | Keycloak | Authentik |
|---|---|---|
| Ressourcenverbrauch | Hoch (1-2 GB RAM) | Niedrig (~512 MB) |
| Lernkurve | Steil | Moderat |
| UI-Qualität | Funktional | Modern |
| OIDC-Unterstützung | Vollständig | Vollständig |
| SAML | Sehr gut | Gut |
| Multi-Tenancy | Ja (Realms) | Nein |
| Proxy Auth | Nein | Ja |
| Community | Sehr groß | Wächst schnell |
| Kubernetes-Ready | Ja (Operator) | Ja (Helm) |
Wann Keycloak, wann Authentik?
Wähle Keycloak wenn:
- Du Enterprise-Features wie SAML 2.0 oder Kerberos brauchst
- Multi-Tenant-Setups (Realms) erforderlich sind
- Dein Team mit Java-Ecosystem vertraut ist
- Du maximale Protocol-Compliance brauchst (Compliance-kritische Umgebungen)
- Du Ressourcen für 1-2 GB RAM hast
Wähle Authentik wenn:
- Du ein kleines bis mittelgroßes Self-Hosting-Setup hast
- Du schnell SSO für Nginx/Traefik ohne großen Aufwand einrichten willst
- Ressourceneffizienz wichtig ist
- Du den Proxy-Provider-Ansatz für Legacy-Apps nutzen willst
- Die moderne Oberfläche ein Kriterium ist
Meine Erfahrung
Ich setze Authentik in meiner Homelab/Self-Hosting-Infrastruktur ein. Die Integration mit Traefik als Forward-Auth war in ~30 Minuten erledigt. Gitea, Nextcloud, und Grafana sind alle hinter Authentik — einmal anmelden, alles nutzen.
Für ein Kundenprojekt mit SAML-Anforderungen und mehreren Mandanten wäre Keycloak die Wahl — trotz des höheren Setup-Aufwands.
Fazit: Authentik ist für Self-Hosters mit modernen Docker/Kubernetes-Setups die bessere Wahl. Keycloak gewinnt in Enterprise-Umgebungen mit komplexen Protocol-Anforderungen oder Multi-Tenancy. Beide sind production-ready.