Was ist Keycloak und wie installiert man es Schritt für Schritt?

Letzte Aktualisierung: 08/01/2026
Autor: Holger
  • Keycloak ist ein Open-Source-Identitätsanbieter, der Authentifizierung, Autorisierung und SSO für mehrere Anwendungen mithilfe von OAuth 2.0, OpenID Connect und SAML zentralisiert.
  • Das Modell mit Domänen, Benutzern, Gruppen und Rollen ermöglicht eine flexible Verwaltung von Identitäten und Berechtigungen, einschließlich der Föderation mit externen Verzeichnissen wie LDAP, Active Directory oder Azure AD.
  • Es kann auf Docker, Kubernetes oder Maschinen bereitgestellt werden. Linux mit PostgreSQL und skalieren Sie hochverfügbar hinter Reverse-Proxys und Load Balancern wie Nginx und Keepalived.
  • Mit Hilfe von Mappern können von Keycloak ausgegebene JWT-Token individuell angepasst werden, wodurch feine Sicherheitsmodelle ermöglicht werden, die sich problemlos in moderne APIs und Anwendungen integrieren lassen.

Keycloak Identitäts- und Zugriffsmanagement

In fast jeder modernen App, die Sie täglich verwenden (E-Mail, soziale Medien, Firmenintranets, Kunden-Dashboards usw.) Im Hintergrund läuft ein System, das festlegt, wer Sie sind und worauf Sie Zugriff haben. Wenn Unternehmen immer mehr Anwendungen, Dienste und APIs nutzen, wird die manuelle Verwaltung von Benutzern, Passwörtern, Berechtigungen und Sitzungen schnell zur Herausforderung.

Keycloak erscheint gerade rechtzeitig, um dieses Chaos zu beseitigen.Keycloak ist eine Plattform für Identitäts- und Zugriffsmanagement, die Authentifizierung, Autorisierung und Single Sign-On für mehrere Anwendungen zentralisiert. Anstatt dass jede Anwendung ihr eigenes Anmelde-, Rollen- und Passwortwiederherstellungssystem implementiert, übernimmt Keycloak all dies, und Anwendungen vertrauen Keycloak einfach mithilfe von Standards wie OAuth 2.0, OpenID Connect oder SAML 2.0.

Was ist Keycloak und welche Rolle spielt es in der IAM-Sicherheit?

Keycloak ist ein Open-Source-Identitätsanbieter (IdP).Es ist in Java geschrieben und wird von Red Hat (ehemals JBoss) betreut. Die Software steht unter der Apache-2.0-Lizenz und kann daher auch in kommerziellen Umgebungen frei verwendet und angepasst werden. Es gibt zwar eine kostenpflichtige Version für Unternehmen namens Red Hat Single Sign-On, deren Kernfunktionalität jedoch identisch ist.

Dieser Identitätsserver bietet SSO, Föderation und Mandantenfähigkeit.Es ermöglicht einem Benutzer, sich einmal anzumelden und auf mehrere Anwendungen zuzugreifen, wobei diese Anwendungen die Authentifizierung an Keycloak delegieren und die Verwaltung von Benutzern, Gruppen, Attributen und Berechtigungen zentral erfolgt, ohne das Rad in jedem Projekt neu implementieren zu müssen.

Keycloak hebt sich von anderen IAM-Lösungen ab. (kostenlos, Open Source oder proprietär) basierend auf ihrer Reife, Verbreitung und Kompatibilität mit Standardprotokollen. Die richtige Lösung für jedes Unternehmen hängt jedoch von seinen individuellen Bedürfnissen ab (kommerzieller Support, SLA, spezifische Funktionen, On-Premises- oder SaaS-Bereitstellung usw.).

Eine der Stärken von Keycloak Es kombiniert mehrere Komponenten: OAuth 2.0- und OpenID Connect-basierte Authentifizierung, SAML 2.0-Unterstützung, Social Login (Google, Facebook, GitHub usw.), Integration mit LDAP und Active Directory, Administration über Webkonsole, CLI und REST-API sowie ein flexibles Modell von Benutzern, Gruppen und Rollen, die sich in den für die Anwendungen ausgegebenen Token widerspiegeln.

Keycloak-Server und verbundene Anwendungen

Erforderliche Grundlagen: OAuth 2.0, OpenID Connect und JWT

Um die Funktionsweise von Keycloak vollständig zu verstehen, ist es hilfreich, drei Konzepte zu klären.OAuth 2.0, OpenID Connect (OIDC) und JSON Web Tokens (JWT). Sie müssen kein Experte werden, aber Sie sollten das Grundkonzept verstehen, denn alles dreht sich darum.

OAuth 2.0 als Autorisierungsframework

OAuth 2.0 ist ein standardisiertes API-Autorisierungsframework.Wird von Giganten wie Google, Facebook, Microsoft, GitHub und LinkedIn genutzt und dient hauptsächlich dazu, einer Anwendung (Client) den Zugriff auf Ressourcen eines Benutzers in einer anderen Anwendung oder API mit der ausdrücklichen Erlaubnis des Benutzers zu ermöglichen, ohne dass Anmeldeinformationen ständig weitergegeben werden müssen.

Anstatt Benutzername und Passwort in jeder Anfrage zu sendenOAuth 2.0 führt das Konzept des Zugriffstokens ein: ein kurzlebiges Zugriffstoken, das in HTTP-Aufrufen an die API gesendet und von dieser validiert wird. Der Identitätsanbieter (z. B. Keycloak) stellt dieses Token nach Überprüfung der Identität und Zustimmung des Nutzers aus.

Der Standard definiert mehrere Autorisierungsabläufe (Grant-Typen). den Prozess an den jeweiligen Clienttyp anpassen: sichere Backend-Anwendungen, browserbasierte Single-Page-Anwendungen (SPAs), Apps Mobilgeräte, eingeschränkte Geräte, Maschine-zu-Maschine-Kommunikation usw. Jeder Ablauf kennzeichnet, was in jedem Schritt ausgetauscht wird (Autorisierungscodes, Token, Anmeldeinformationen usw.).

Die vier grundlegenden Rollen von OAuth 2.0 sind:

  • Ressourcenbesitzer: in der Regel der Benutzer, dessen Daten Sie einsehen oder ändern möchten.
  • Kunden: die Anwendung (Web, Mobilgeräte, IoT, Backend…), das im Namen des Benutzers handeln möchte.
  • Ressourcenserver: die API, die die Daten bereitstellt und die Zugriffstoken validiert.
  • Autorisierungsserver: der Identitätsanbieter (Keycloak), der den Benutzer authentifiziert und Token ausgibt.

Darüber hinaus führt OAuth 2.0 das Konzept der Scopes ein.Diese definieren den Umfang der Berechtigungen, die der Benutzer der Anwendung erteilt: E-Mails lesen, in einem sozialen Netzwerk posten, auf ein Basisprofil zugreifen usw. Das ausgestellte Token kodiert, welche Berechtigungen dem Client tatsächlich erteilt wurden.

OpenID Connect: eine Identitätsschicht auf Basis von OAuth 2.0

OpenID Connect (OIDC) erweitert OAuth 2.0 um die Identitätsfunktion.Während sich OAuth mit der Autorisierung befasst (was eine Anwendung tun darf), befasst sich OIDC mit der standardisierten Identifizierung des authentifizierten Benutzers und der Ermittlung seiner grundlegenden Daten.

  9 Möglichkeiten, Ihre IP-Adresse zu verbergen

OIDC definiert bekannte Endpunkte und Metadatenwie beispielsweise das auf der Route veröffentlichte Entdeckungsdokument. /.well-known/openid-configuration Dabei gibt der Anbieter Autorisierungs-URLs, Token, öffentliche Schlüssel, Benutzerinformationen usw. an. Dadurch können Anwendungen nahezu automatisch konfiguriert werden.

Es stellt außerdem den UserInfo-Endpunkt bereit.Dies dient dazu, Informationen des authentifizierten Benutzers (Name, E-Mail-Adresse usw.) mithilfe eines gültigen Zugriffstokens abzurufen. Bei Keycloak-basierten Integrationen ist es üblich, diese Daten nach dem Login auszulesen, um Benutzerprofile in der Anwendung zu füllen.

Zugriffstoken und JSON Web Tokens (JWT)

In vielen modernen Implementierungen ist der Zugriffstoken ein JWT. (JSON Web Token). Dies ist ein Standard (RFC 7519) zur Darstellung von Ansprüchen als digital signiertes JSON, bestehend aus drei durch Punkte getrennten Teilen: Header, Payload und Signatur, die alle in Base64URL kodiert sind.

Der Header enthält technische Informationen über das Token. (Signaturalgorithmus, Token-Typ und oft auch die Kennung des verwendeten Schlüssels) kidDie Nutzlast enthält die Ansprüche, wie zum Beispiel:

  • exp: Verfallsdatum.
  • siehe untenSendezeit.
  • issAussteller, üblicherweise die IdP-URL.
  • unten: eindeutige Benutzerkennung.
  • aud: Zielgruppe, an die das Token gerichtet ist.
  • JTI: eindeutiger Bezeichner des Tokens.

Die Signatur wird mit einem privaten oder geheimen Schlüssel erzeugt.Daher führt jede Änderung am Token zu einem Fehler in der Signatur und wird bei der Validierung erkannt. Die API erhält den öffentlichen Schlüssel vom Identitätsanbieter (IdP) mithilfe der entsprechenden Eigenschaft. jwks_uri aus dem Discovery-Dokument, das auf eine JSON-Datei verweist, die die Liste der öffentlichen Schlüssel und deren kid.

Keycloak ermöglicht auch die Anpassung der ausgegebenen Token.Zusätzliche Ansprüche können basierend auf Benutzerattributen, Gruppen, Rollen oder auch festen Werten hinzugefügt werden. Dies geschieht mithilfe von Mappern, die pro Client oder pro Clientbereich konfiguriert werden, wodurch APIs genau die benötigten Informationen erhalten.

OAuth2 OpenID Connect und JWT-Schema

Keycloak-Architektur: Realms, Benutzer, Gruppen und Rollen

Keycloak organisiert seine Konfiguration in Realms.Diese fungieren wie „virtuelle Identitätsserver“ innerhalb einer einzelnen Installation. Andere Anbieter bezeichnen etwas Ähnliches als Mandant oder Verzeichnis. Jeder Bereich verfügt über eigene, unabhängige Benutzer, Gruppen, Clients, Richtlinien und Einstellungen.

Standardmäßig gibt es einen speziellen Bereich namens „Master“.Dieses Konto sollte für globale administrative Aufgaben reserviert sein, wie beispielsweise das Erstellen und Verwalten anderer Realms. Der Administrator kann mehrere Realms über dieselbe Konsole verwalten, ohne sich für jeden Realm mit einem separaten Konto anmelden zu müssen.

Lokale Benutzer können innerhalb eines Bereichs definiert werden.Sie werden mit benutzerdefinierten Attributen versehen, gruppiert und Rollen zugeordnet. Das Modell ist sorgfältig konzipiert, sodass relevante Informationen letztendlich in den von der Anwendung verwendeten Token (Rollen, Gruppen, Profildaten, Sicherheitskennzeichen usw.) widergespiegelt werden.

Gruppen ermöglichen die hierarchische Organisation von Benutzern.Eine Gruppe kann Untergruppen (Kindergruppen) haben, und ein Benutzer erbt die Attribute und Rollen aller Gruppen, denen er angehört, einschließlich der übergeordneten Gruppen. Dies ermöglicht sehr flexible Autorisierungsmodelle, ohne dass Konfigurationen für jeden Benutzer wiederholt werden müssen.

Hinsichtlich der Rollen gibt es zwei Hauptebenen.:

  • ReichsrollenGlobale Variablen innerhalb des Bereichs, die häufig für bereichsübergreifende Berechtigungen verwendet werden.
  • Kundenrollen: spezifisch für eine bestimmte Anwendung, wodurch eine feine Granularität für jeden Dienst ermöglicht wird.

Keycloak unterstützt zusammengesetzte RollenDas heißt, Rollen, die wiederum andere Rollen beinhalten. Dies erleichtert die Gruppierung von Berechtigungen und deren gleichzeitige Zuweisung an Benutzer oder Gruppen. Allerdings sollte diese Funktion nicht übermäßig genutzt werden, um die Verwaltung nicht zu verkomplizieren oder die Leistung zu beeinträchtigen.

Keycloak im Entwicklungsmodus installieren: Docker, Kubernetes und VM

Um eine Laborumgebung mit Keycloak einzurichten Es gibt mehrere einfache Optionen: Docker-Container, Bereitstellung auf Kubernetes (zum Beispiel mit Minikube) oder klassische Installation auf einer virtuellen Maschine mit Linux und OpenJDK.

Keycloak in Docker

Der schnellste Weg, Keycloak zum Testen zu starten Dabei wird ein Container mit dem offiziellen Image ausgeführt, Port 8080 freigegeben und Benutzername und Passwort des Administrators über Umgebungsvariablen übergeben, um anschließend im entsprechenden Modus zu booten. start-dev (ohne HTTPS und mit eingebetteter H2-Datenbank):

Mit einem einzigen Docker-Befehl Ein funktionsfähiger Server wird erhalten in http://localhost:8080ausreichend, um mit der Administrationskonsole herumzuspielen, Bereiche, Benutzer und Clients zu erstellen und grundlegende Integrationen zu testen.

Keycloak in Kubernetes mit Minikube

Wenn Sie bereits mit Kubernetes arbeiten, können Sie Keycloak problemlos einsetzen. Anhand der Beispielmanifeste aus dem offiziellen Repository erstellen Sie ein Deployment und einen Service und öffnen dann einen Tunnel mit Minikube, um von Ihrem Rechner aus auf den Service zuzugreifen, üblicherweise wieder über Port 8080.

  CPI-Dateien – Definition, Eigenschaften, Verwendung, kompatible Programme

Dieser Ansatz eignet sich ideal zur Simulation produktionsnäher Umgebungen. (mit Pods, Services, externer Konfiguration usw.) und um mit kontrollierten Bereitstellungen, Skalierung und Upgrades von Keycloak auf K8s-Clustern zu experimentieren.

Keycloak unter Ubuntu mit OpenJDK und PostgreSQL (erweiterter Entwicklermodus)

Eine weitere Möglichkeit besteht darin, Keycloak auf einer Ubuntu-VM zu installieren. Wir verwenden OpenJDK und eine lokale PostgreSQL-Datenbank mit einem selbstsignierten Zertifikat und einem benutzerdefinierten Hostnamen. Obwohl es sich noch um ein Testszenario handelt, nähert es sich einer Produktionsumgebung an.

Typische Schritte umfassen:

  • Aktualisieren Sie das Betriebssystem und installieren Sie Java (z. B. OpenJDK 11 oder höher).
  • Installieren Sie PostgreSQL (idealerweise auf einem separaten Server, in einer Testumgebung kann es jedoch auf demselben Rechner laufen).
  • Erstellen Sie einen spezifischen Benutzer und eine Datenbank für Keycloak und erteilen Sie die entsprechenden Berechtigungen.
  • Erstellen Sie einen Systembenutzer ohne Berechtigungen (z.B. keycloak) um den Dienst auszuführen.
  • Laden Sie die offizielle Keycloak-Distribution herunter und entpacken Sie sie in /opt/keycloak und Berechtigungen anpassen.
  • Generieren Sie ein selbstsigniertes X.509-Zertifikat mit openssl und setzen Sie es in keycloak.conf zusammen mit den PostgreSQL-Verbindungsparametern und der hostname erwünscht.
  • Eine Einheit definieren systemd Um Keycloak beim Systemstart im Entwicklungsmodus zu starten, müssen Administratorrechte über Umgebungsvariablen festgelegt werden.

Sobald der Dienst eingerichtet und betriebsbereit istDer Zugriff erfolgt üblicherweise über HTTPS auf Port 8443 mit dem konfigurierten Hostnamen. Bei Verwendung eines selbstsignierten Zertifikats muss dieses im Browser als vertrauenswürdig eingestuft werden (durch Importieren der Zertifizierungsstelle oder des Zertifikats selbst in den vertrauenswürdigen Zertifikatsspeicher des Rechners).

Keycloak-Installation und -Bereitstellung

Erweiterte Bereitstellungen: Hochverfügbarkeit, PostgreSQL und Reverse-Proxy

Wenn wir vom Labor zur Produktion übergehenDas Bild ändert sich: Man muss über hohe Verfügbarkeit, robuste Datenspeicherung, gültige Zertifikate und oft auch über einen Reverse-Proxy nachdenken, der den HTTPS-Zugriff und den Lastausgleich zentralisiert.

Ein recht gängiges Vorgehen ist die Bereitstellung mehrerer Keycloak-Knoten. Hinter einem Load Balancer (z. B. Nginx) und unter Verwendung einer PostgreSQL-Datenbank im HA-Modus als Persistenz-Backend soll die Vermeidung von Single Points of Failure sowohl auf Anwendungs- als auch auf Datenebene erreicht werden.

Bei dieser Art von Architektur werden üblicherweise folgende Schritte befolgt::

  • Bereiten Sie aktualisierte Linux-Server (Debian/Ubuntu) vor und installieren Sie die Abhängigkeiten: unzip, wget, openjdk, openssl, usw.
  • Erstellen Sie einen Systembenutzer keycloak mit Zuhause in /opt/keycloak und ohne privilegierte interaktive Anmeldeberechtigungen.
  • Laden Sie die gewünschte Version von Keycloak herunter, entpacken Sie sie und weisen Sie die Besitzrechte dem entsprechenden Benutzer zu.
  • Erstellen Sie eine spezifische Datenbank in PostgreSQL mit dem entsprechenden Benutzer und den entsprechenden Berechtigungen und passen Sie außerdem den Schema-Besitzer und die Standardberechtigungen für Tabellen an.
  • Generieren Sie selbstsignierte Zertifikate (oder verwenden Sie Zertifikate einer internen Zertifizierungsstelle) für Keycloak-Knoten und konfigurieren Sie HTTPS auf dem Anwendungsserver.
  • Einstellen keycloak.conf Um eine Verbindung zum PostgreSQL VIP herzustellen, müssen HTTP/HTTPS-Ports, Zertifikate, Proxy-Parameter, Hostname, Cluster-Stack (z. B. UDP) und Protokollierungsstufen definiert werden.
  • Einen Dienst definieren systemd einfach das Starten Schlüsselmantel mit kc.sh start o kc.sh start --optimizedVerwaltung automatischer Neustarts im Fehlerfall.

Nginx wird üblicherweise auf der Veröffentlichungs- und Lastverteilungsschicht eingesetzt. als HTTPS-Reverse-Proxy mit eigenem TLS-Zertifikat und einer Upstream-Konfiguration, die auf Keycloak-Knoten an den Backend-Ports verweist (in der Regel Port 8080, wenn TLS in Nginx terminiert wird).

Um einzelne Fehlerquellen im Balancer zu eliminierenEs ist üblich, zwei Nginx-Knoten mit Keepalived für Hochverfügbarkeit zu konfigurieren. Dieses Tool verwaltet eine Floating Virtual IP (VIP), die auf einem der Server als Master angekündigt wird und im Fehlerfall auf den Backup-Knoten umschaltet, um die Servicekontinuität zu gewährleisten.

Einrichten eines Realms, Benutzer und Anwendungsregistrierung (Clientregistrierung)

Sobald Keycloak eingerichtet und betriebsbereit ist, ist der nächste logische Schritt Dabei wird ein Bereich für unsere Benutzer und Anwendungen erstellt und von dort aus werden Benutzer, Gruppen, Rollen und Clients (die Anwendungen, die die Authentifizierung an Keycloak delegieren) definiert.

Über die Admin-Konsole wird ein neuer Realm erstellt. Einfach durch Eingabe des Namens. Ab diesem Zeitpunkt steht uns ein eigener Bereich mit individuellen Einstellungen zur Verfügung. Folgende Einstellungen sind in der Regel hilfreich:

  • SMTP für den E-Mail-Versand konfigurieren (E-Mail-Verifizierung, Passwortwiederherstellung, Benachrichtigungen).
  • Aktivieren Sie diese Option, falls gewünscht. Deklaratives Benutzerprofil, wodurch Sie deklarativ festlegen können, welche Attribute ein Benutzer haben wird, welche Validierungen gelten und ob diese vom Benutzer bearbeitet werden können.
  • Anmeldeparameter anpassen: Selbstregistrierung zulassen oder verbieten, Sitzung zwischen Browserneustarts speichern, Passwortwiederherstellung ermöglichen usw.

Das Anlegen eines Benutzers in einem Bereich ist so einfach wie das Ausfüllen eines Formulars. Sie benötigen einen Benutzernamen, eine E-Mail-Adresse sowie Vor- und Nachnamen. Anschließend legen Sie im Reiter „Anmeldedaten“ Ihr Passwort fest (temporär oder dauerhaft). Dort können Sie Gruppen, Rollen und weitere Attribute zuweisen.

  Fehler „TSL-Handshake fehlgeschlagen“ behoben

Keycloak bietet eine eigene Kontokonsole für Endbenutzer.Dort können sie ihre Profildaten einsehen und bearbeiten, ihr Passwort ändern, aktive Sitzungen überprüfen oder zusätzliche Authentifizierungsfaktoren verwalten. Es ist eine sehr komfortable Möglichkeit, dem Nutzer einen Teil der grundlegenden Kontoverwaltung zu übertragen.

Die Identitätsfälschung ist ein weiteres interessantes Feature.Ein Administrator mit entsprechenden Berechtigungen kann sich über die Konsole als ein Benutzer ausgeben, um Probleme zu reproduzieren, Berechtigungen zu überprüfen usw., ohne das Passwort des Benutzers zu benötigen.

Damit eine Anwendung Keycloak als IdP verwenden kannEs muss als Client registriert werden. Im Bereich „Clients“ wird eine neue Client-ID erstellt, der Typ als OpenID Connect angegeben (sofern nicht SAML verwendet werden soll) und die zulässigen OAuth 2.0-Abläufe ausgewählt: Standard-Ablauf (Autorisierungscode), Direkte Zugriffsberechtigungen (Passwort), Implizit, Client-Anmeldeinformationen (Dienstkonten), Gerätecode, CIBA usw.

Die Clientkonfiguration entscheidet ebenfalls Falls eine Client-Authentifizierung (Client-Geheimnis oder Zertifikate) erforderlich ist, müssen die gültigen Redirect-URIs und die zulässigen Web-Ursprünge festgelegt werden (besonders wichtig bei Single-Page-Anwendungen aufgrund der CORS-Richtlinien). Anschließend kann die Anwendung offizielle oder Drittanbieter-Bibliotheken verwenden, um die Authentifizierung via OIDC an Keycloak zu delegieren.

Integration mit externen Verzeichnissen und anderen Identitätsanbietern

Keycloak kann als lokale Identitätsquelle fungieren. (Benutzer, Gruppen und Rollen, die in der eigenen Datenbank definiert sind) oder es kann als Identitätsbroker für einen oder mehrere externe Anbieter fungieren.

Eine sehr häufige Integrationsmöglichkeit besteht mit Azure Active Directory.Azure AD speichert Unternehmensbenutzer und -gruppen, und Keycloak verbindet sich als OIDC-Client, um Identitäten und Gruppen herunterzuladen und sie lokalen Benutzern und Rollen zuzuordnen. Dadurch wird die Duplizierung von Identitäten und administrativen Aufgaben an mehreren Standorten vermieden.

Im Allgemeinen kann Azure AD als externer Identitätsanbieter verwendet werden. Folgendes wird getan:

  • Registrieren Sie eine Anwendung in Azure AD, indem Sie deren Client-ID abrufen und ein Clientgeheimnis erstellen.
  • Konfigurieren Sie in Azure AD die Umleitungs-URIs für Keycloak (OIDC-Broker-Endpunkt im entsprechenden Realm).
  • Passen Sie die Ansprüche an, die im Token in der Azure AD-Anwendung ausgegeben werden, beispielsweise durch Einbeziehung der Benutzergruppen.
  • Erstellen Sie in Keycloak einen OpenID Connect Identity Provider, der auf die Azure-Endpunkte (Authorization, Token, Logout, UserInfo) verweist, und konfigurieren Sie Client-ID, Client-Geheimnis und die gewünschten Anmeldeparameter.

Sobald zwischen ihnen Vertrauen aufgebaut istWenn sich ein Benutzer über Azure AD anmeldet, erstellt Keycloak den Benutzer lokal (oder synchronisiert ihn) und kann Azure-Gruppen mithilfe erweiterter Mapper Keycloak-Rollen zuordnen. Beispielsweise kann die Gruppe „Entwickler“ in Azure in die Rolle „Entwickler“ in Keycloak übersetzt werden, die dann in integrierten Anwendungen und Diensten (wie Jenkins) bereitgestellt wird.

Zusätzlich zu Azure AD ermöglicht Keycloak die Identitätsföderation mit LDAP, klassisches Active Directory, andere OIDC-IdPs, Social-Media-Anbieter (Google, Facebook, GitHub usw.) und mehr, die Möglichkeit, mehrere Quellen gleichzeitig im selben Bereich zu mischen.

Zusätzliche Sicherheitsmaßnahmen: Bots, CAPTCHA und bewährte Verfahren

Obwohl Keycloak die Authentifizierungssicherheit erheblich stärkt (MFA, Passwortrichtlinien, Kontosperrung, Sitzungskontrolle usw.), Anmelde-, Registrierungs- und Passwortwiederherstellungsseiten bleiben klare Ziele für Bots und automatisierte Angriffe.

Um diese Bedrohungen abzumildernEs wird empfohlen, Keycloak mit Anti-Bot-Mechanismen wie DSGVO-konformen CAPTCHA-Lösungen zu kombinieren, die zwischen menschlichem und automatisiertem Datenverkehr unterscheiden, ohne die Benutzerfreundlichkeit zu beeinträchtigen. Diese Lösungen werden üblicherweise in Anmelde- und Registrierungsformulare integriert und bieten so eine zusätzliche Schutzebene gegen Credential-Stuffing-Angriffe, die massenhafte Erstellung von Konten oder den Missbrauch von Passwortwiederherstellungsprozessen.

Neben CAPTCHA gibt es weitere bewährte Verfahren, die Folgendes umfassen: Monitor Protokolle Um Zugriffe zu gewährleisten, sollten Sie Warnungen für ungewöhnliche Spitzenwerte bei fehlgeschlagenen Anmeldeversuchen einrichten, die ausgestellten Token und deren Gültigkeitsdauer regelmäßig überprüfen, sicherstellen, dass nur die notwendigen Endpunkte nach außen hin zugänglich sind, und Keycloak und seine Abhängigkeiten mit den neuesten Sicherheitspatches auf dem Laufenden halten.

Dieses gesamte Ökosystem an Funktionalitäten (SSO, Mandantenfähigkeit, Integration mit externen Verzeichnissen, konfigurierbare Token, Hochverfügbarkeitsbereitstellungen und Bot-Schutz) machen Keycloak zu einem sehr leistungsfähigen Werkzeug zur Zentralisierung der Authentifizierung und Autorisierung für moderne Anwendungen und helfen Unternehmen, ihre Sicherheitslage zu verbessern, ohne die Benutzerfreundlichkeit zu beeinträchtigen oder das Identitätsmanagement ständig neu erfinden zu müssen.