von Patrick Botz
IBMS NEUES EIM FEATURE UND KERBEROS VEREINFACHEN DIE PRÜFUNG VON ZUGANGSBERECHTIGUNGEN
Vergraben irgendwo zwischen all den neuen OS/400 V5R2 Hardware- und Partitionierungs-Funktionen findet sich EIM (Enterprise Identity Mapping), eine eigenständige Infrastruktur zur Benutzer-Authentifizierung. EIM ist – in Verbindung mit anderen Technologien – in der Lage, eine Single Sign-On (SSO)-Funktionalität zur Verfügung zu stellen. EIM bietet zusammen mit der Kerberos Authentifizierung SSO-Fähigkeiten über entsprechende Betriebssystem-Schnittstellen. Diese Schnittstellen können auch von Drittanbieter-Anwendungen genutzt werden, um SSO-Fähigkeiten bereitzustellen. Letztlich ermöglicht diese SSO-Funktionalität Entwicklern, ein ODBC-Programm zu schreiben, das auf einer Windows 2000 Plattform läuft und SQL-Anweisungen zur Ausführung übergibt, die Informationen aus Datenbanken auf unterschiedlichen Plattformen abruft ohne dabei interaktive oder hart codierte Benutzer-IDs oder Passworte bereitstellen zu müssen. Das bedeutet, dass ein Endbenutzer über völlig unterschiedliche IDs auf diversen Maschinen verfügen kann, trotzdem aber keine Benutzer-IDs oder Passworte zwischen den Maschinen übertragen werden müssen. Genau genommen benötigen die Benutzer-IDs auf den Server-Plattformen noch nicht einmal Passworte.In diesem speziellen Szenario sind Entwickler nicht genötigt, in irgendeiner Form Code für die Server-Plattform zu schreiben und dennoch betreibt jede Server-Plattform ihre eigenen, plattformspezifischen Sicherheitsmechanismen zum Schutz der Daten.
Aber EIM umfasst mehr als nur SSO. Die EIM Infrastruktur bietet mit ihrem Design Anwendungsentwicklern die Möglichkeit, heterogene, auf mehrere Plattformen verteilte Anwendungen effizienter und kostengünstiger zu entwickeln, die einfacher als bisher zu schützen und zu administrieren sind.
EIM ist eine der ersten von IBM ausgelieferten eServer- und eLiza- (IBMs Projekt selbstverwaltender Systeme) Funktionen. Die Bereitstellung erfolgte zwar zuerst nur auf der iSeries Plattform aber IBM plant, EIM APIs und ein entsprechendes Schema mit den nächsten Releases der Basis-Betriebsysteme aller eServer-Plattformen bereitzustellen. IBM plant überdies, die Linux-Implementierung der APIs als open source zur Verfügung zu stellen und somit ISVs die Möglichkeit zu geben, die APIs in ihre Anwendungen einzubauen, ohne dafür eine Gebühr an IBM entrichten zu müssen. Darüber hinaus plant IBM, eine Java-Implementierung der EIM APIs, um damit einen weit verbreiteten Einsatz auf IBM- und Nicht-IBM- Plattformen zu ermöglichen.
Hier soll die EIM Infrastruktur, die SSO-Fähigkeiten, die Verbindung zu OS/400 und IBM Pläne in Richtung Technologie näher erläutert werden. (Wobei hierzu anzumerken ist, dass bei der Erwähnung von IBM Zukunftsplänen diese als aktuelle IBM Planungen verstanden werden sollten, die durchaus Veränderungen unterliegen können, ohne dass dies der Öffentlichkeit explizit bekannt gegeben würde.)
Die Problematik mehrerer Benutzerverzeichnisse
Wir alle verfügen über eine Reihe von Benutzer-IDs und Passworten, die wir innerhalb und außerhalb unseres Unternehmens verwenden. Eine kürzlich angestellte Studie ergab, dass der durchschnittliche Benutzer über 15 Benutzer-IDs und Passworte verfügt. Wir alle wissen, welch „schmerzliche“ Erfahrungen das mit sich bringen kann.
Wie auch immer, das Vorhandensein mehrerer Benutzerverzeichnisse hat auch erhebliche Auswirkungen auf Administratoren und Anbieter von Anwendungslösungen. Administratoren müssen User-IDs und Passworte in diversen unterschiedlichen Benutzerverzeichnissen verwalten (anlegen, verändern oder löschen). Überdies muss oft durch eine Reihe von Mitarbeitern viel Zeit und Mühe investiert werden (meist User Help Desk Funktionen), um die durch UID-/Passwort-Probleme entstandenen Fehlerbedingungen zu bereinigen, Passworte (vergessen) zurückzusetzen und die Synchronisation von Passworten über mehrere Benutzerverzeichnisse vorzunehmen. Überdies müssen, wenn ein Mitarbeiter das Unternehmen verlässt, alle Zugangsberechtigungen in den unterschiedlichen Benutzerverzeichnissen rückgängig gemacht werden – ein fehlerträchtiger Vorgang, der überdies zu Sicherheitslücken führen kann.
Der günstigste Weg zur Umgehung der durch die unterschiedlichen Benutzerverzeichnisse entstehenden Problematiken ist bei Anwendungslösungen, die in einem auf mehrere Plattformen verteilten, heterogenen Umfeld ausgeführt werden sollen, oft die Erstellung eines zusätzlichen Layers, der eine anwendungsspezifische Benutzerregistrierung und eigene Sicherheitsregeln beinhaltet.
Unglücklicherweise beseitigt dieser Lösungsansatz für Benutzer und Administratoren nicht die Verpflichtung zur Pflege mehrerer Benutzerverzeichnisse, sondern erhöht eventuell, je nach Situation, hier den zu treibenden Aufwand zusätzlich.
Einige Produkte zur unternehmensweiten Benutzerverwaltung oder Single Sign On- Produkte haben mit unterschiedlichem Erfolg den Versuch unternommen, eine Lösung für die hier beschriebenen Problematiken der mehrfachen Benutzerregistrierung zu finden. Nach meiner Meinung gibt es bis heute keine Lösung, die wirklich breite Akzeptanz erfahren hat, da niemand bisher in der Lage war, die Belange aller beteiligten Parteien entsprechend zu würdigen.
Produkte zur Benutzerverwaltung auf Unternehmensebene – so wertvoll und nützlich sie in vieler Hinsicht auch sein mögen – lösen die Problematik des Umgangs mit mehreren Benutzerverzeichnissen eigentlich immer nur für den Administrator. Die Benutzer müssen nach wie vor diverse Benutzer-IDs und Passworte wissen und behalten. Die Produkte enthalten keinerlei Funktionalität, die beispielsweise Anwendungsentwicklern das Erstellen heterogener, auf mehrere Plattformen verteilter Lösungen vereinfachen würde.
SSO-Produkte, die auf der Speicherung aller benötigter User-IDs und Passworte und anschließender automatischer „Wiedergabe“ auf dem Weg eines Benutzers von Server zu Server beruhen, können ebenfalls recht nützlich sein. Einerseits werden hier aber nur die Benutzerbelange (Verwaltung mehrerer Benutzerverzeichnisse) abgedeckt, andererseits ergeben sich durch diese Produkte eventuell sogar zusätzliche Sicherheitslücken. Diese Art von Produkten löst das Problem meist durch Speicherung aller Benutzer-IDs und Passworte an einer zentralen Stelle, entweder als Klartext oder in verschlüsselter Form. Wird die verschlüsselte Form gewählt, muss der dazu benötigte Schlüssel irgendwo auf demselben System abgespeichert werden. Das aber bedeutet, dass alle Systemadministratoren mit nur geringfügigem Aufwand in der Lage sind, Kenntnis über sämtliche Passworte zu erhalten. Überdies tendieren SSO-Produkte, die mit Passwort-Wiedergabe arbeiten, dazu, nur in statischen Client/Server-Umgebungen – nicht jedoch in heterogenen, auf mehrere Plattformen verteilten Umgebungen – zuverlässig zu arbeiten.
Als IBM begann, diese Problematik in Angriff zu nehmen, stellte sich heraus, dass alle vorhandenen Ansätze in einem Punkt übereinstimmen: Sie alle versuchen, die Tatsache zu verbergen oder zu ignorieren, dass in Wirklichkeit mehrere Benutzerverzeichnisse existieren. Sie verkünden im Grunde: „Vergessen Sie einfach die Tatsache, dass Sie bereits Benutzer in existierenden Benutzerverzeichnissen definiert haben und dass Sie bereits viele Terabytes an Daten mit den zugehörigen Sicherheitsmechanismen geschützt haben. Verwenden Sie einfach das Benutzerverzeichnis dieses Produktes und Ihre Probleme gehören der Vergangenheit an.“
Aus der Sicht des Produktes macht diese Aussage vielleicht sogar Sinn, aus der Sicht des Administrators und der Endbenutzer ist es aber normalerweise unklug, wenn nicht sogar ausgeschlossen, die Existenz mehrerer Benutzerverzeichnisse zu ignorieren. Man stelle sich beispielsweise eine Anwendung vor, die Daten in einer DB2 Datenbank speichert und die Zugriffskontrolle zu diesen Daten auf Anwendungsebene zur Verfügung stellt. So lange ein Benutzer auf diesem System nur auf diese eine Anwendung zugreifen muss, kann eine SSO-Lösung mit Passwort-Wiedergabe ausreichend sein. Aber dies ist eigentlich praxisfremd. Die meisten Benutzer benötigen Zugriff zu vielen unterschiedlichen Anwendungen und Betriebssystem-Schnittstellen, um ihre Arbeit erledigen zu können. Diese Fakten lassen sich aus der Sicht des Administrators einfach nicht ignorieren.
IBM entschied bereits zu einem frühen Zeitpunkt, dass eine erfolgreiche Lösung:
- die Tatsache akzeptieren muss, dass diverse Benutzerverzeichnisse existieren und dass diese auf lange Sicht auch weiter existieren werden
- Vereinfachungen und Vorteile für alle Beteiligten bieten muss
- sowohl vom Betriebssystem als auch von den Anwendungen verwendbar sein muss
- auch auf Nicht-IBM Plattformen weitgehend verfügbar sein muss
IBMs neuer Ansatz: EIM
EIM verfolgt einen vollständig neuen Ansatz zur Lösung der beim Betrieb mehrerer Benutzerverzeichnisse auftretenden Problematiken. Eigentlich ist es nicht EIM allein, das hier eine Problemlösung bietet, sondern die EIM Infrastruktur in Verbindung mit existierenden Authentifizierungs- und Autorisierungs-Technologien.
Das Konzept hinter EIM scheint auf den allerersten Blick recht simpel. EIM stellt eine Infrastruktur (d.h. eine Reihe von APIs) zur Verfügung, über die Informationen zur Relation von Identitäten in unterschiedlichen Benutzerverzeichnissen abgefragt und verwaltet werden können. EIM überwacht Personen (oder Einheiten wie Druck- oder Dateiserver) und die zugehörigen Benutzer-IDs in unterschiedlichen Benutzerverzeichnissen. EIM bietet überdies die Möglichkeit, direkt aus einer Anwendung heraus auf Informationen aus Benutzerverzeichnissen zurückzugreifen.
Um die Struktur besser zu verstehen, stelle man sich zwei Benutzerverzeichnisse vor. REGW soll das Benutzerverzeichnis einer spezifischen Windows 2000 Domäne repräsentieren, REG4 hingegen ein spezifisches OS/400 Benutzerverzeichnis. Eine Anwendung könnte nun via EIM anfragen, ob die Person, die der Anwendung als Benutzer-ID „boats“ in REGW bekannt und vertraut ist, über eine entsprechende Identität in REG4 verfügt und wenn ja, um welche Benutzer-ID es sich hierbei handelt. Ist nun ein Äquivalent der Benutzer-ID „boats“ in beiden Benutzerverzeichnissen vorhanden, kann die Anwendung der Benutzer-ID „boats“ trauen, gleichgültig, über welches Benutzerverzeichnis die Berechtigungsprüfung ursprünglich vorgenommen wurde.
Um die Äquivalente von Benutzer-IDs zuverlässig und effizient zu ermitteln, verwaltet EIM die Informationen in hierarchischer Weise. Diese Hierarchie besteht aus EIM Domäne, EIM Identifier, EIM Benutzerverzeichnis-Definitionen und Verknüpfungen basierend auf der Benutzer-Identität. Eine EIM Domäne besteht aus einer Gruppe von EIM Identifiern. Jede Domäne verfügt über einen EIM Domänen-Controller, eine Reihe von Benutzerverzeichnissen, die innerhalb der Domäne registriert sind, und Benutzer-Identitäten in Benutzerverzeichnissen, die entsprechenden EIM Identifiern zugeordnet sind.
Bei der EIM Entwicklung durch IBM haben sich drei unterschiedliche Informationselemente herauskristallisiert, über die eine eindeutige Benutzeridentifikation möglich ist:
- der Benutzername (in den meisten Benutzerverzeichnissen als UID bezeichnet)
- die Art des Benutzerverzeichnisses
- die Instanz dieses Benutzerverzeichnisses (Die Liste der Benutzerprofile auf einem iSeries System ist eine Instanz eines OS/400 Benutzerverzeichnisses, die Liste der Profile auf einem zweiten iSeries System ist eine weitere Instanz.)
Ein EIM Benutzerverzeichnis bildet den Typ und die Instanz eines Benutzerverzeichnisses ab. Es besteht eine Relation zwischen der Benutzer-ID, dem EIM Benutzerverzeichnis und dem zugehörigen EIM Identifier. Bevor eine Benutzer- Identität aus einem Benutzerverzeichnis einem EIM Identifier zugeordnet werden kann, muss das Benutzerverzeichnis zuerst selbst in der EIM Domäne definiert (oder registriert) werden. Abbildung 1 stellt einen einzelnen EIM Identifier mit allen zugeordneten Benutzer-IDs dar.
EIM ist allerdings nicht einfach nur ein weiteres Benutzerverzeichnis. Hier sind keine Benutzer-IDs, Passworte oder andere spezifische Attribute der Benutzerregistrierung definiert. EIM stellt keine Authentifizierungs-Mechanismen zur Verfügung, dafür sind nach wie vor die entsprechenden Anwendungen zuständig. EIM ermöglicht Anwendungsentwicklern das Erstellen von Anwendungen, die einerseits Informationen aus Benutzerverzeichnissen fremder Plattformen zur Authentifizierung verwenden, andererseits jedoch das Benutzerverzeichnis der lokalen Plattform zur Autorisierung nutzen. Mit Hilfe von EIM wird dies möglich, ohne dass die Anwendung den Benutzer in beiden Benutzerverzeichnissen authentifizieren müsste.
Die EIM Infrastruktur wird zu einem späteren Zeitpunkt in diesem Artikel noch weiter im Detail behandelt. Wir wollen uns jedoch hier zum besseren Verständnis der Arbeitsweise zuerst näher mit den EIM SSO Fähigkeiten befassen.
SSO und OS/400
Die OS/400 EIM Strategie in V5R2 basiert auf der Kerberos Authentifizierungs- Technologie. Kerberos ist ein Plattform-neutraler, verteilt arbeitender Authentifizierungs-Mechanismus, der auf vielen Plattformen verfügbar ist. So ist Kerberos beispielsweise der in Windows 2000 Domänen eingesetzte Authentifizierungs-Mechanismus.
OS/400 unterstützt seit V5R1 (über PTF auch schon ab V4R5) Kerberos und die Generic Sercurity Services API (GSSAPI) – auch bekannt als Network Authentication Service. Aber diese Unterstützung erlaubte bei der Anwendungserstellung nur den Zugriff auf Kerberos. Die Betriebssystem-Schnittstellen akzeptierten nach wie vor nur eine Identifikation über OS/400 Benutzer-ID / Passwort. Die Erklärung hierfür ist einfach. Die Identifikation eines Benutzers über ein Kerberos-Benutzerverzeichnis ist für die Ermittlung seiner Zugriffsrechte auf OS/400 Ressourcen wertlos. OS/400 aber muss Kenntnis über das Benutzerprofil haben, um die OS/400 eigene Sicherheits-Semantik anwenden zu können.
Das ist einer der Gründe, warum IBM EIM entwickelt hat. Wenn ich weiß und darauf vertraue, dass Sie sind, wer Sie behaupten „dort drüben“ zu sein (z.B. gültiges Kerberos Ticket) und ich weiterhin weiß, welche Identität Sie benutzen, wenn Sie sich „hier drüben“ aufhalten, dann muss ich nicht zwingend eine nochmalige Authentifizierung über mein lokales Benutzerverzeichnisses vornehmen. Ich weiß also bereits, wer Sie sind und ich weiß (aufgrund des gültigen Kerberos Tickets) weiter, dass Sie auch sind, wer Sie behaupten zu sein. EIM vervollständigt nun das Bild, indem mir zusätzlich die Information zur Verfügung gestellt wird, welche Identität (oder Benutzer-ID) Sie auf meinem eigenen System verwenden. Das bedeutet also, Kerberos erledigt die verteilte Authentifizierung und EIM den Brückenschlag von der Kerberos Benutzer-ID zu (in unserem Beispiel) dem OS/400 Benutzerprofil.
Die Fortsetzung dieses Artikels erscheint in einer der nächsten NewSolutions Ausgaben.
|
In NEWSolutions sind bereits folgende Artikel zum Thema erschienen:
|
| Debbie Saugen: „Lotus Server Backup – Online mit BRMS/400„ Teile 1 – 3; September, Oktober, November 2001 Martin Teetz: „Sicherheit für Notebooks: Passwort reicht nicht„; November 2001 Sonderseiten: „Security-Produkte„; November 2001 Debbie Saugen: „Sicherung des Integrated File Systems„; Januar 2002 Al Barsa, Jr. und Sharon L. Hoffman: „Grundlagen eines Katastrophen-Behebungsplans„; Teil 1: Februar 2002, Teil 2: Mai 2002 Jose Lopez: „Der Europamarkt für Firewalls„; Juni 2002 Bernd Lindner: „Rundumschutz gegen Hackerangriffe„; September 2002 Sonderseiten: „Security-Produkte„; September 2002 Mel Beckman: „Auf dem Weg zum Single Sign-On„; Teil 1: September 2002; Teil 2: Oktober 2002; Teil 3: November 2002 |
|
Auf unserer Website www.newsolutions.de sind folgende Artikel veröffentlicht:
|
| Wayne O. Evans: „So begegnen Sie den alltäglichen Bedrohungen der Sicherheit Ihrer iSeries„ Norbert Olbrich: „Zurück in die Vergangenheit„ Chuck Stupca: „Switched Disks für die iSeries„ Jim Hoopes: „Domino und IFS (Integrated File System)“ Al Barsa, Jr. und Sharon L. Hoffman: „Empfehlungen für die Sicherung Ihrer iSeries“ Karlheinz Krollmann: „Gesicherte Daten – ein Datencrash beim ZDF kann fatale Folgen haben“ |
|
VORSCHAU: Für die kommenden Ausgaben der NEWSolutions sind folgende Artikel zum Thema geplant:
|
| Carol Woodbury: „Einsatz von Digital Certificates„ Wayne O. Evans: „Zugriffsrechte auf Anwendungsebene„ Carol Woodbury: „Anwendungsdesign mit Sicherheitsaspekten„ |
|
Bücher von DC Press Duke Communications:
|
| „AS/400 Security„ von Wayne Madden und Carol Woodbury, Band 1 und Band 2 |
![Künstler Burgy Zapp [http://burgyzapp.de]](http://newsolutions.de/it/wp-content/uploads//re1_Architeczug-3_Z_sw_o-300x300.jpg)


