SOA braucht Identity-Management

02.05.2008
Von Bernhard Davignon
Die Kopplung verschiedener IT-Systeme in einer Service-orientierten Architektur erfordert ein durchgängiges Konzept für den Umgang mit Identitäten und Sicherheitsverfahren.

Unternehmen richten ihre IT immer häufiger an den Prinzipien einer Service-orientierten Architektur (SOA) aus. Applikationen werden in Services geschnitten mit dem Ziel, neue Prozesse und Anwendungen auf der Basis bestehender Dienste aufbauen zu können. Dabei ist oft folgendes Phänomen zu beobachten: Die Herausforderungen einer SOA werden direkt adressiert und erste Lösungen gebaut. Das Zugriffs-Management lösen die Verantwortlichen pragmatisch. So steuert beispielsweise die genutzte Integrationssoftware die Berechtigungen für die angebundenen Services und Applikationen. Im Zuge des weiteren Ausbaus der IT-Landschaft wird dieses Verfahren schnell unbeherrschbar. Um den heute geltenden Compliance-Anforderungen gerecht zu werden, ist es notwendig, ein einheitliches Vorgehen für das Management von Authentifizierung, Autorisierung, Verbindlichkeit und Nachvollziehbarkeit zu etablieren.

In Fachkreisen wird bereits seit einiger Zeit ein zentral organisiertes Identity-Management diskutiert. Daran knüpfen sich Erwartungen bezüglich einer Vereinfachung der Benutzer- und Berechtigungsverwaltung, der Möglichkeit eines Single-Sign-ons und weiterer Vorteile. Diese lassen die Einführung eines Identity-Managements als sinnvoll erscheinen. Trotzdem besteht in vielen Unternehmen noch Nachholbedarf. Ohne ein funktionierendes Identity-Management ist es schwierig, eine SOA aufzubauen, die Sicherheit, Verbindlichkeit und Nachvollziehbarkeit gewährleistet. Zugleich stellt eine SOA aus Sicht des Identity-Managements eine besondere Herausforderung dar.

Zu den Grundprinzipien der SOA gehört eine lose Kopplung von Systemen. Im Vergleich zu einem monolithischen System ist die Verwaltung von Identitäten und die Kontrolle sowie Steuerung von Zugriffsberechtigungen ungleich komplexer. Die Ausgangssituation ist meist durch eine Vielzahl von Systemen mit eigener Benutzerverwaltung und eigenem Berechtigungs-Management gekennzeichnet. In einigen Fällen ist das Berechtigungs-Management darüber hinaus eng mit der Geschäftslogik verbunden. Unternehmen nutzen meist unterschiedliche Verfahren und Datenhaltungen, um Identitäten zu speichern und Mitarbeiter zu authentifizieren sowie zu autorisieren.

Probleme in der Praxis

Um ein Identity-Management aufzusetzen, sollten Unternehmen die angestrebten Ausbaustufen anhand verschiedener Dimensionen definieren.
Um ein Identity-Management aufzusetzen, sollten Unternehmen die angestrebten Ausbaustufen anhand verschiedener Dimensionen definieren.

Die konkreten Probleme zeigt folgende Aufgabenstellung: Ein neuer Prozess soll auf Basis dreier unterschiedlicher Systeme realisiert werden. Die neu erstellte Applikation integriert Services von drei unterschiedlichen Programmen mit jeweils eigener Benutzerverwaltung. Alle drei Systeme protokollieren die Benutzeraktivitäten. Um eine sinnvolle Protokollierung aller Benutzeraktivitäten zu ermöglichen, reicht die integrierende Applikation die Benutzeridentität an alle drei Anwendungen weiter. Jedes System muss den Benutzer authentifizieren und dessen Berechtigung prüfen. Die Konsequenz ist, dass die User in allen drei Systemen administriert und jeweils neu authentifiziert werden müssen. Diese Authentifizierungsprozesse verursachen einen Entwicklungs- und Pflegeaufwand. Aufgrund des damit entstehenden Overheads beeinträchtigen sie die Gesamtperformance der Anwendung.

Die Integration von Services macht am Firmentor nicht halt. In B-to-B-Szenarien auf Basis einer SOA muss auch das Identity-Management über Unternehmensgrenzen hinweg funktionieren. Zur Bewältigung dieser Herausforderungen gibt es verschiedene Ansätze.