Migration von über 2.000 Benutzerkonten: Wie NDS mit uns seine Authentifizierungsarchitektur modernisierte

Migration von über 2.000 Benutzerkonten: Wie NDS mit uns seine Authentifizierungsarchitektur modernisierte

Ausganssituation

Die Anforderungen an Identitäts- und Zugriffsmanagement haben sich in den vergangenen Jahren grundlegend verändert. Während klassische Verzeichnisdienste lange Zeit eine stabile Grundlage für die zentrale Verwaltung von Benutzeridentitäten und Berechtigungen geboten haben, stoßen sie im Kontext moderner Web- und Cloud-Architekturen zunehmend an ihre Grenzen.

Insbesondere Themen wie Single Sign-On, standardisierte Authentifizierungsprotokolle und die Integration in verteilte Systemlandschaften erfordern neue Ansätze, die über die reine Bereitstellung eines Verzeichnisdienstes hinausgehen. Gleichzeitig stellen historisch gewachsene Strukturen und inkonsistente Datenbestände zusätzliche Herausforderungen bei der Weiterentwicklung bestehender Systeme dar.

Im Rahmen dieses Projekts wurde eine bestehende, LDAP-basierte Authentifizierungsarchitektur gemeinsam analysiert, strukturiert aufbereitet und in eine moderne Identity- und Access-Management-Lösung überführt. Im Fokus standen dabei insbesondere die Migration bestehender Benutzer- und Berechtigungsstrukturen, die Sicherstellung der Datenkonsistenz sowie die technische Integration in eine zukunftsfähige Architektur auf Basis standardisierter Authentifizierungsverfahren.

Funktionsweise von LDAP

Das Lightweight Directory Access Protocol (LDAP) wird seit vielen Jahren zur zentralen Verwaltung von Benutzerkonten und Berechtigungen eingesetzt. In insbesondere organisch gewachsenen Systemen stößt dieser Ansatz jedoch zunehmend an seine Grenzen.

Eine besondere Herausforderung liegt in der Strukturierung der Daten. Benutzer, Gruppen und Berechtigungen werden in einem hierarchischen Verzeichnisbaum organisiert, dessen Aufbau häufig über Jahre gewachsen ist. Dadurch entstehen komplexe Strukturen, die nur schwer nachvollziehbar und aufwendig zu pflegen sind. Hinzu kommt, dass moderne Anforderungen wie Single Sign-On, standardisierte Authentifizierungsverfahren oder die Integration cloudnativer Anwendungen nur eingeschränkt unterstützt werden.

Bei NDS zeigte sich genau dieses Spannungsfeld: Die bestehende LDAP-basierte Infrastruktur erfüllte weiterhin ihren Zweck als zentrale Identitätsquelle, erschwerte jedoch die Integration moderner Anwendungen und die Weiterentwicklung der Authentifizierungsarchitektur.

Moderne Authentifizierung mit Keycloak

Während LDAP primär als Verzeichnisdienst fungiert, stellt Keycloak eine vollständige Identity- und Access-Management-Plattform bereit. Dabei unterstützt Keycloak modernere Authentifizierungsstandards wie OpenID Connect, OAuth 2.0 oder SAML 2.0. Der Loginprozess funktioniert dabei anders als bei LDAP:

  • Ein Benutzer versucht sich bei einer Anwendung anzumelden.
  • Die Anwendung leitet den Benutzer zum Keycloak-Login weiter.
  • Nach erfolgreicher Authentifizierung erstellt Keycloak einen Token.
  • Dieser Token enthält Informationen über die Benutzeridentität, Rollen und Gruppen oder weitere Claims
  • Die Anwendung erhält den Token zurück und entscheidet auf dieser Basis über die Zugriffsrechte.

Dieser Ansatz ermöglicht standardisierte Authentifizierungsflows, Single Sign-On und eine deutlich bessere Integration moderner Web-Architekturen.

Migration der Benutzerstruktur und automatisierte Datenkonvertierung

Die eigentlichen Benutzerdaten lagen im LDAP-System in Form eines Verzeichnisbaums vor. Für die Migration wurde zunächst ein vollständiger Export erstellt. Dieser Export erfolgte im LDIF-Format (LDAP Data Interchange Format), einem textbasierten Standardformat für LDAP-Verzeichnisdaten. Der Export enthielt unter anderem Benutzerkonten, Distinguished Names, Gruppenzugehörigkeiten und organisatorische Strukturen. Da das Datenmodell von LDAP nicht direkt mit dem Datenmodell von Keycloak kompatibel ist, musste eine Transformation erfolgen.

Da das Datenmodell von LDAP nicht direkt mit dem Datenmodell von Keycloak kompatibel ist, war eine Transformation der Daten erforderlich. LDAP organisiert Informationen primär entlang eines baumartigen Verzeichnisansatzes, während Keycloak ein stärker anwendungszentriertes Modell mit klar definierten Entitäten wie Usern, Rollen, Gruppen und Mandanten (z. B. Realms oder Organizations) verwendet. Im Rahmen der Migration wurden die LDIF-Daten daher in das Keycloak-spezifische Export-Format überführt. Dieses basiert auf JSON und folgt einem festen Schema, das von Keycloak für Import- und Exportprozesse genutzt wird. Um diese Transformation durchzuführen, wurde ein dediziertes Skript entwickelt, das die LDAP-Daten einliest, strukturell interpretiert und in das entsprechende JSON-Schema überführt.

Dabei wurden nicht nur Daten konvertiert, sondern auch bestehende Inkonsistenzen im LDAP-Verzeichnis bereinigt. Historisch gewachsene Strukturen führten unter anderem zu uneinheitlichen Gruppenzuweisungen, redundanten Einträgen und nicht mehr konsistent gepflegten Attributen. Im Zuge der Transformation wurden diese Strukturen vereinheitlicht und die Gruppenlogik gezielt angepasst, sodass sie besser zum rollen- und tokenbasierten Modell von Keycloak passt.

Während der Migration traten mehrere technische Herausforderungen auf. Da mehrere tausend Benutzer importiert werden mussten und gleichzeitig die Keycloak-Organizations-Funktion genutzt wurde, eine relativ neue und noch instabile Funktion, kam es zunächst zu Problemen beim Import großer Datenmengen. Insbesondere traten Datenbank-Timeouts auf, wenn sehr große Importdateien verarbeitet wurden. Zur Lösung wurden mehrere Maßnahmen kombiniert:

  • Anpassung der Keycloak-Konfiguration, insbesondere der Timeout-Parameter
  • Aufteilung großer Importdateien in mehrere kleinere Dateien
  • gestaffelter Import der Benutzer

Anstatt einen großen Import auszuführen, wurde der Datensatz in etwa 50 kleinere Importdateien aufgeteilt. Dieser Ansatz erwies sich als deutlich stabiler und reduzierte die Wahrscheinlichkeit von Datenbank-Timeouts erheblich. Keycloak selbst nutzt bei großen Datenmengen ein ähnliches Verfahren und teilt große Exporte automatisch auf mehrere Dateien auf.

Integration der bestehenden Tool Landschaft

Die Migration der Benutzerdaten stellte lediglich einen Teil des Projekts dar. Eine mindestens ebenso große Herausforderung bestand darin, die bestehende Werkzeuglandschaft von NDS auf die neue Authentifizierungsarchitektur umzustellen.

Zahlreiche Anwendungen und Entwicklungswerkzeuge waren bislang direkt an LDAP angebunden. Für die Umstellung auf Keycloak mussten diese Systeme einzeln analysiert, neu konfiguriert und getestet werden. Dabei zeigte sich, dass die Unterstützung moderner Authentifizierungsverfahren je nach Anwendung sehr unterschiedlich ausfällt.

Besonders aufwändig waren dabei die Konfiguration der Benutzer- und Gruppenzuordnung sowie die Anpassung bestehender Login-Prozesse. Ziel war es, Authentifizierungen konsequent über Keycloak abzuwickeln, parallele Login-Wege zu vermeiden und Benutzerinformationen automatisiert aus der zentralen Identitätsverwaltung zu übernehmen.

Zusätzlich mussten zahlreiche Anwendungen so konfiguriert werden, dass Benutzerkonten und Gruppenzugehörigkeiten automatisch angelegt beziehungsweise synchronisiert werden. Da jedes System hierfür eigene Mechanismen und Konfigurationsmöglichkeiten mitbringt, erforderte die Integration einen hohen manuellen Aufwand und umfangreiche Tests.

Gerade in heterogenen Entwicklungsumgebungen zeigt sich häufig, dass die technische Migration der Benutzerdaten nur einen Teil des Gesamtprojekts ausmacht. Die eigentliche Herausforderung liegt oft darin, sämtliche Anwendungen konsistent an die neue Authentifizierungsplattform anzubinden und dabei bestehende Berechtigungskonzepte beizubehalten.

Ergebnis der Migration

Durch die automatisierte Transformation der LDAP-Daten sowie eine segmentierte Importstrategie konnte die Migration der Benutzerstruktur stabil und performant durchgeführt werden. Benutzer, Gruppen und Rollen wurden konsistent in das Keycloak-Datenmodell überführt.

Die Authentifizierungslogik wurde dabei von einem verzeichnisbasierten Ansatz auf ein tokenbasiertes Modell umgestellt. Anwendungen authentifizieren Benutzer nicht mehr direkt gegen ein zentrales Verzeichnis, sondern nutzen standardisierte Protokolle wie OpenID Connect. Nach erfolgreicher Authentifizierung stellt Keycloak signierte Tokens bereit, die Identitäts- und Berechtigungsinformationen (z. B. Rollen und Gruppen) enthalten. Dieser Ansatz entkoppelt Anwendungen von der zugrunde liegenden Benutzerverwaltung und ermöglicht eine flexible Integration in verteilte Systemlandschaften. Gleichzeitig bildet er die Grundlage für Single Sign-On, konsistente Autorisierungslogiken und die nahtlose Einbindung in moderne Web- und Cloud-Architekturen.

Die Migration von LDAP auf eine moderne Identity- und Access-Management-Lösung ist weit mehr als ein reines Migrationsprojekt, sie erfordert ein tiefes Verständnis bestehender Systemlandschaften, sauber strukturierte Datenmodelle und die Fähigkeit, technische Entscheidungen langfristig tragfähig zu gestalten. Tralios begleitet solche Transformationsprozesse nicht nur operativ, sondern als verlässlicher Partner auf Augenhöhe: von der Analyse gewachsener Strukturen über die Konzeption geeigneter Zielarchitekturen bis hin zur stabilen Umsetzung und dem anschließenden Betrieb. Dabei steht nicht die kurzfristige Implementierung im Fokus, sondern eine Lösung, die dauerhaft funktioniert.