
Drupal Keycloak-Integration - Wie konfiguriert man sie und welche Vorteile bringt sie?
Ein Login für alle Firmensysteme, automatische Synchronisierung der Benutzer zwischen verschiedenen Tools und Zugangsmanagement, ohne die Entwickler bei jeder Änderung einzubeziehen. Dies sind Beispiele für die Vorteile der Integration von Drupal mit Keycloak. In dem Artikel werde ich zeigen, wie einfach es ist, die Integration dieser Tools einzurichten und warum diese Lösung den Personal- und IT-Abteilungen viel Zeit spart. Hier verwende ich Informationen aus meinem Film auf dem Nowoczesny Drupal Kanal.
In diesem Artikel:
- Das Problem mehrerer Systeme und Benutzerkonten in Unternehmen
- Was ist Keycloak und warum sollten Sie es wählen?
- Vorteile der Integration von Drupal mit Keycloak
- Wie richtet man die Drupal-Integration mit Keycloak ein?
- Ein Demo, wie das System in der Praxis funktioniert
- Erweiterungs- und Anpassungsoptionen
- Zeit- und Kostenersparnis für Unternehmen
- Unterstützung bei der Integration von Drupal mit Keycloak
Das Problem mehrerer Systeme und Benutzerkonten in Unternehmen
Die meisten Unternehmen haben heute mehrere oder ein Dutzend Systeme - Intranets, Content-Management-Lösungen, Marketing-Automatisierungstools, CRMs, HR-Systeme, Aufgabenmanagementsysteme und Kommunikationswerkzeuge. Jedes davon erfordert ein separates Benutzerkonto.
Bei der Einstellung eines neuen Mitarbeiters muss die Personalabteilung Konten für sie an mehreren Stellen erstellen, und wenn sie entlassen werden, müssen sie daran denken, diese Konten zu deaktivieren oder zu löschen. Das IT-Team hingegen beschäftigt sich täglich mit dem Zurücksetzen von Passwörtern, da Mitarbeiter verschiedene Passwörter für verschiedene Systeme haben und diese vergessen.
Unternehmen haben oft keine zentrale Kontrolle über Benutzerzugänge und Konten. Wenn eine Organisation Dutzende bis Tausende von Mitarbeitern hat, kann dies ein großes Problem sein. Es lohnt sich zu überlegen, wie man dieses Problem lösen kann.
Was ist Keycloak und warum sollten Sie es wählen?
Keycloak ist ein Open Source Identitätsmanagementsystem das die oben beschriebenen Probleme löst. Das Programm ermöglicht es Ihnen, alle Benutzerkonten in Ihrem Unternehmen zentral zu verwalten. Ein Mitarbeiter loggt sich einmal ein und hat Zugang zu allen Systemen, für die er autorisiert ist.
Die Personalabteilung kann den Zugriff von einem Ort aus verwalten, und die IT-Abteilung muss nicht mehr Zeit darauf verwenden, Passwörter oder Logins in jedem System einzeln zu beheben - sie kümmert sich nur um dieses eine Benutzermanagementsystem.
Alternative Lösungen auf dem Markt
Es gibt viele alternative Identitätsmanagementlösungen auf dem Markt. Werfen wir einen Blick auf einige von ihnen. Microsoft Entra ID (ehemals Azure Active Directory) von Microsoft ist eine der beliebtesten Unternehm enslösungen und kostet im Basistarif etwa 6 US-Dollar pro Benutzer und Monat. Microsoft Entra ID bietet Integration mit dem Microsoft-Ökosystem, aber es kommt mit Anbieterbindung und steigenden Kosten, wenn die Anzahl der Mitarbeiter wächst.
Okta ist eine weitere beliebte SaaS-Lösung, die sich auf Identitäts- und Zugangsmanagement spezialisiert hat. Wie Auth0 (nun Teil von Okta), bietet es Pakete ab ein paar hundert Dollar im Monat für einige tausend aktive Benutzer. Diese Plattformen sind funktionsreich, aber ihre Kosten können in größeren Organisationen schnell steigen.
Google Workspace bietet auch Single Sign-On-Features, ist jedoch stärker auf Google-Anwendungen fokussiert und deckt möglicherweise nicht alle Bedürfnisse von Unternehmen ab, die verschiedene Systeme verwenden.
Es ist auch möglich, eine eigene Lösung auf Basis von LDAP (Lightweight Directory Access Protocol) zu entwickeln, aber dies erfordert erhebliche technische Expertise und Entwicklerressourcen.
Vorteile von Keycloak
Die Keycloak Anwendung sticht als attraktive Alternative hervor, da sie als Open Source-System kostenlos ist - wir zahlen nur für das Hosting und möglichen technischen Support. Wie Drupal können wir es auf jedem Server installieren, ob intern oder in einer externen Cloud. Der entscheidende Vorteil ist, dass es keine Lizenzkosten pro Benutzer gibt - egal ob wir 1.000 oder 5.000 Mitarbeiter haben, die Infrastrukturkosten bleiben konstant und steigen nicht linear mit dem Wachstum der Organisation.
Vorteile der Integration von Drupal mit Keycloak
Die Integration von Drupal mit Keycloak bietet der Organisation mehrere bedeutende Vorteile.
- Keine Lizenzkosten - wir zahlen nicht für Benutzer, nur für das Hosting, was sowohl für Drupal als auch für Keycloak zutrifft.
- Wir haben die volle Kontrolle über Benutzerdaten, was wichtig ist wegen Sicherheits- und DSGVO-Verpflichtungen.
- Wir können das Tool vollständig an die Bedürfnisse des Unternehmens anpassen, da wir nicht durch fertige Lösungen eingeschränkt sind. Wir können das System nach Belieben anpassen, da beide Softwarelösungen Open Source sind.
Wenn das Unternehmen bereits Systeme auf Drupal hat - zum Beispiel ein Intranet oder eine Website - ist die Integration von Keycloak mit diesen Systemen sehr einfach.
Wie richtet man die Drupal-Integration mit Keycloak ein?
Wir benötigen mehrere Elemente, um Drupal mit Keycloak zu verbinden. Auf der Drupal-Seite benötigen Sie das Keycloak Modul und das OpenID Connect Modul, die die Grundlage der Integration bilden. Keycloak kann mithilfe von Docker lokal installiert werden, was der schnellste Weg ist, die Lösung zu testen.

Keycloak konfigurieren
In Keycloak müssen wir das sogenannte Realm konfigurieren - ein Raum für unsere Organisation. Innerhalb der Realm-Einstellungen definieren wir Client-Details, Adressen für Umleitungen und andere Sicherheitsparameter. Wir können auch Testbenutzer mit grundlegenden Details wie Vorname, Nachname und E-Mail-Adresse hinzufügen.

Drupal konfigurieren
In Drupal gehen wir zur Konfiguration des OpenID Connect Moduls und wählen die Keycloak-Option. Wir geben die Redirect URL ein, die in die Keycloak-Einstellungen kopiert werden muss, die Client-ID und das Client-Geheimnis, welches wir aus den Einstellungen von Keycloak kopieren. Wir geben auch die Basis-URL von Keycloak und den Realm-Namen von Keycloak ein.

Ein Demo, wie das System in der Praxis funktioniert
Nachdem die Drupal Keycloak-Integration eingerichtet ist, sieht der Anmeldevorgang sehr einfach aus. Wir klicken auf die Anmeldeschaltfläche auf der Drupal-Website und werden zu Keycloak weitergeleitet.
Nach dem Einloggen in Keycloak werden wir automatisch zurück zur Drupal-Seite geleitet, bereits als eingeloggter Benutzer.

Automatische Synchronisierung ist entscheidend - wenn ein Benutzer in Keycloak existiert, aber noch kein Konto in Drupal hat, erstellt das System automatisch ein neues Konto, wenn sich der Benutzer das erste Mal einloggt. Der Drupal-Administrator kann im Panel sehen, dass das neue Konto ohne sein Eingreifen erstellt wurde. Dies ermöglicht es, Konten zentral in Keycloak zu verwalten, und Benutzer können sich in das Intranet oder andere Drupal-Instanzen einloggen, ohne Konten in jedem System manuell erstellen zu müssen.
Erweiterungs- und Anpassungsoptionen
Die gezeigte Drupal Keycloak-Integration ist nur eine grundlegende Einrichtung. Beide Systeme können auf beiden Seiten erheblich erweitert und neu konfiguriert werden, um die Lösung besser an die Bedürfnisse eines bestimmten Unternehmens anzupassen.
Synchronisierung zusätzlicher Benutzerfelder
Eine der am häufigsten genutzten Optionen besteht darin, benutzerdefinierte Felder im Profil eines Benutzers in Keycloak hinzuzufügen und diese Werte in Drupal zu synchronisieren. Zum Beispiel können Sie Felder wie Vorname, Nachname, Telefonnummer, Position oder Abteilung hinzufügen. Ein wesentlicher Vorteil ist die automatische Synchronisierung - wenn sich eine Telefonnummer in Keycloak ändert, wird diese Änderung automatisch mit Drupal und anderen verbundenen Systemen synchronisiert. Auf diese Weise muss der Administrator die Benutzerdaten nicht in jedem System manuell aktualisieren. Eine Änderung in Keycloak reicht aus, und alle verbundenen Anwendungen erhalten die aktualisierten Informationen.
Sicherheit erhöhen - Zwei-Faktor-Authentifizierung
Um das gesamte Anmeldesystem noch sicherer zu machen, können Sie die Zwei-Faktor-Authentifizierung (2FA) hinzufügen. Keycloak bietet eingebaute Unterstützung für verschiedene 2FA-Methoden, einschließlich:
- mobiler Apps wie Google Authenticator oder Microsoft Authenticator,
- SMS-Codes,
- FIDO2-Dongles,
- Push-Benachrichtigungen.
Die Implementierung von 2FA erhöht das Sicherheitsniveau einer Organisation erheblich, was besonders wichtig ist, wenn auf sensible Firmendaten oder geschäftskritische Systeme zugegriffen wird.
Integration mit anderen Firmensystemen
Keycloak kann mit vielen verschiedenen Systemen verbunden werden, die in einem Unternehmen verwendet werden—nicht nur mit Drupal. Es ist eine beliebte Lösung, und oft stehen vorgefertigte Module, Plug-Ins oder Bibliotheken für verschiedene Anwendungen zur Verfügung, so dass Sie problemlos mit Keycloak integrieren können.
Beispiele für Systeme, die mit Keycloak integriert werden können:
- CRM (Customer Relationship Management) Systeme,
- Projektmanagement-Tools (Jira, Confluence),
- Teamkommunikationsanwendungen (Mattermost, Rocket.Chat),
- e-Learning- und Trainingssysteme,
- Analyse- und Business-Intelligence-Tools,
- Unternehmens-Mobilanwendungen.
Rollen- und Berechtigungszuordnung
Eine fortgeschrittene Möglichkeit besteht darin, die Rollen-Zuordnung zwischen Keycloak und Drupal zu konfigurieren. Sie können in Keycloak Rollen erstellen (z.B. Marketing Manager, Vertriebsmitarbeiter, HR-Spezialist) und automatisch entsprechende Berechtigungen in Drupal basierend auf diesen Rollen zuweisen. Auf diese Weise wird einem neuen Mitarbeiter automatisch der Zugang zu den passenden Bereichen des Intranets oder anderer Systeme basierend auf seiner Position gewährt.
Fähigkeiten für verschiedene Systemtypen
Wenn ein Unternehmen auf Drupal Content-Management-Lösungen hat(Websites oder Intranets), ist die Integration ähnlich der in der Demonstration gezeigten. Keycloak ist jedoch flexibel genug, dass es auch mit in anderen Technologien geschriebenen Systemen integriert werden kann:
- Webanwendungen in PHP, Java, .NET, Python,
- Mobile Anwendungen auf iOS und Android,
- Legacy-Systeme mit SAML- oder LDAP-Unterstützung,
- Microservices und auf Containerarchitektur basierende Anwendungen.
Flexibilität der Konfiguration
Der Vorteil von Open Source-Lösungen besteht darin, dass sie vollständig angepasst werden können. Sie können das Aussehen der Keycloak-Anmeldeseite an das Corporate Design anpassen, benutzerdefinierte Authentifizierungsabläufe konfigurieren oder mit vorhandenen Active Directory- oder LDAP-Systemen integrieren.
Diese Flexibilität ermöglicht es Ihnen, eine Lösung zu erstellen, die perfekt auf die spezifischen Bedürfnisse Ihrer Organisation zugeschnitten ist, ohne die Einschränkungen, die durch handelsübliche Identitätsverwaltungssysteme auferlegt werden.
Zeit- und Kostenersparnis für Unternehmen
Die Integration von Keycloak mit Drupal oder Open Intranet bringt greifbare Einsparungen für das Unternehmen.
- Keine Lizenzgebühren pro Benutzer - kein Bedarf, 5-10 Dollar pro Monat für jeden neuen Mitarbeiter im Unternehmen zu zahlen.
- Bessere Sicherheit durch zentrale Zugriffskontrolle im Unternehmen - wir verwalten alle Zugänge aus einem zentralen Keycloak-System.
- Einfache Skalierbarkeit bei der Hinzufügung neuer Systeme - wenn wir neue Anwendungen integrieren oder neue Tools in der Organisation einführen, können wir diese auch mit Keycloak verbinden und müssen uns keine Gedanken über die Hinzufügung von Benutzerkonten machen.
Spezifische Vorteile für Abteilungen
Für die Personalabteilung bedeutet dies, dass nicht mehr manuell Konten in mehreren Systemen erstellt und gelöscht werden müssen, wenn ein Mitarbeiter eingestellt oder entlassen wird. Für die IT-Abteilung bedeutet es viel weniger Anfragen im Zusammenhang mit Passwortzurücksetzung und Anmeldeproblemen in verschiedenen Anwendungen.
Die Mitarbeiter gewinnen an Komfort - ein Login verschafft ihnen Zugang zu allen Unternehmenstools, die sie für ihre Arbeit benötigen. Sie müssen sich nicht viele verschiedene Passwörter merken oder Zeit mit dem Einloggen in mehr Systeme verschwenden.
Unterstützung bei der Integration von Drupal mit Keycloak
Wenn Sie die Implementierung eines zentralisierten Kontoverwaltungssystems für Ihr Unternehmen in Betracht ziehen oder bestehende Systeme integrieren möchten, bieten wir umfassende Unterstützung auf diesem Gebiet. Unsere Drupal-Agenturwird bei der Planung der Architektur und der Konfiguration von Keycloak mit Drupal und anderen in Ihrer Organisation verwendeten Systemen helfen. Wir können bestehende Benutzer migrieren und Unterstützung bei der Wartung Ihrer Systeme bieten, sowohl Keycloak als auch Drupal-Systeme, wie Intranets oder CMS.