Novell Account Management 3: Heterogene Welten im Griff
Artikel erschienen in Swiss IT Magazine 2003/02
Der Name des Produkts ist relativ neu, seine Historie aber ist lang. Das Novell Account Management setzt die Entwicklung fort, die Novell mit NDS for NT begonnen und mit NDS Corporate Edition weiterentwickelt hat. Die Funktionen waren und sind Authentifizierungsdienste und Benutzermanagement, die für heterogene Umgebungen zur Verfügung gestellt werden.
Neu sind aber nicht nur der Name des Produkts, sondern auch die Architektur und seine Implementierung. Novell Account Management 3 (NAM) ist nicht einfach eine überarbeitete Version der Vorgängerprodukte, sondern ein neuerer, besserer, konsequent an Standards und offenen Schnittstellen adressierter Ansatz. Und, soviel sei schon gesagt, das Produkt ist wesentlich attraktiver als die Vorläufer, weil es mehr kann und sich sehr viel besser an seine Einsatzfelder anpassen lässt.
Diese liegen typischerweise in grösseren Netzwerken, in denen Benutzer auf eine Reihe unterschiedlicher Systemplattformen zugreifen müssen und dabei dennoch nur mit einem Benutzernamen und Kennwort arbeiten sollen. Dabei geht es beim NAM 3 allerdings nicht um ein einfaches Single Sign-on im Sinne der zentralen Verwaltung von Authentifizierungsinformationen, sondern darum, sowohl das Benutzer- und Gruppenmanagement als auch die Authentifizierungsvorgänge zu zentralisieren. Dass dabei das eDirectory als zentrale Basis dient, kann nicht überraschen. Eher schon, dass nicht mehr über die proprietären Schnittstellen zur NDS, sondern über LDAP auf das Verzeichnis zugegriffen wird.
NAM besteht aus zwei Kernmodulen: Die Platform Services werden für eine Reihe unterschiedlicher Betriebssysteme geliefert. Die Liste reicht von Windows 95, wenn auch mit eingeschränkter Funktionalität, über Windows 2000, Linux und Solaris bis zu zOS, also dem Betriebssystem von IBMs zSeries-Systemen. Die Platform Services leiten Anforderungen für das Benutzer- und Gruppenmanagement und die Authentifizierung an die Core Services weiter. Diese Dienste verarbeiten die Anforderungen, wobei auf das eDirectory zugegriffen wird. Im Verzeichnis sind sowohl die Informationen zu Benutzern und Gruppen als auch die Authentifizierungsinformationen gespeichert.
Die Core Services selbst bestehen aus den Manager Services, dem Event Listener und Agents. Der Manager übernimmt die zentralen Steuerungsaufgaben beim NAM. Er führt beispielsweise ein Journal der Änderungen und stellt sicher, dass alle Manipulationen auf allen vom NAM unterstützten Plattformen durchgeführt werden. Er erstellt Protokolle, verwaltet die Objekte des NAM im eDirectory und die digitalen Zertifikate, die für die SSL-basierende Kommunikation zwischen den diversen Komponenten des NAM benötigt werden.
Der Event Listener ist ein Modul, das von DirXML, Novells Meta-Directory-Dienst, bereitgestellt wird. Er kann unter anderem Änderungen in angeschlossenen Verzeichnissen, darunter natürlich dem eDirectory, verarbeiten. Der Event Listener erkennt die Änderungen im eDirectory und leitet sie an die Manager Services weiter, die diese dann an die Platform Services der angeschlossenen Systeme verteilen. Der Event Listener kann potentiell auch auf einem anderen Server als die Manager Services laufen, wobei aber eine lokale Installation typisch ist.
Die dritte wichtige Komponente der Core Services sind schliesslich die Agents. Die Agents werden vor allem für zeitkritische Kommunikationsaufgaben und hier die Authentifizierung benötigt. Die Platform Services greifen auf Agents zu, die dann direkt die Authentifizierung am eDirectory durchführen können. Agents werden im Gegensatz zu den Manager Services und dem Event Listener typischerweise in mehreren, im Netzwerk verteilten Instanzen eingerichtet. Sie sollten möglichst in den gleichen physischen Subnetzen wie die Systeme mit den Platform Services installiert werden. Agents laufen auf eDirectory-Servern. Jeder Agent hat also lokalen Zugriff auf die Authentifizierungsinformationen und kann Anforderungen damit schnell beantworten.
Die Platform Services sind die spezifischen Implementierungen für die unterstützten Plattformen. Sie sorgen dafür, dass Änderungen bei Benutzern und Gruppen mit den Informationen im zentralen eDirectory synchronisiert werden und dass Authentifizierungsanforderungen an dieses weitergeleitet werden. Beim NAM 3 lässt sich das Verhalten dieser Platform Services verhältnismässig einfach anpassen. Es gibt jeweils eine generische Komponente und einen Plattform-spezifischen Teil.
Beim Benutzer- und Gruppenmanagement werden die Anpassungen an die jeweilige Plattform über sogenannte Receiver Scripts vorgenommen. Diese Scripts gibt es für jede Funktion wie etwa das Hinzufügen und Löschen von Benutzern und Gruppen. Sie sind in einer der gängigen Scriptsprachen der jeweiligen Plattform erstellt, bei Windows 2000 also beispielsweise in VBscript. Da es sich um Scripts handelt, liegen diese im Source
Code vor und können von Administratoren einfach erweitert und an die speziellen Bedürfnisse der jeweiligen Systemumgebung angepasst werden.
Etwas grösser ist der Aufwand bei der Anpassung der Authentifizierungsdienste. Die Kommunikation mit den Agents wird über den generischen Platform Services Process abgewickelt. Für jede Plattform wird darüber hinaus mit dem NAM 3 ein sogenannter Platform Intercept geliefert. Dieses Modul klinkt sich über die Standard-Schnittstellen der jeweiligen Betriebssysteme in die Authentifizierungsprozesse ein und übergibt die Anforderungen dann über den Platform Services Process an einen Agent, der auf das eDirectory zugreift.
Novell hat sich in diesem Bereich von den Ansätzen, bei denen beispielsweise System-DLLs in Windows-Systemen ersetzt wurden, verabschiedet und nutzt nun die von den jeweiligen Systemherstellern definierten Ansatzpunkte. Die Schnittstelle der Authentifizierungsdienste ist die Authentication Service API. Diese API wird als C-API und, je nach Plattform, auch als ActiveX Control bereitgestellt. Anwendungen können darauf zugreifen, um die Authentifizierungsdienste des NAM zu nutzen.
Novell hat beim NAM 3 sehr viel mehr Wert als in den Vorversionen einerseits auf offene Schnittstellen und andererseits auf eine saubere Integration mit den unterstützten Plattformen gelegt. Das führt dazu, dass Kennwörter sowohl von UNIX- als auch zOS-Plattformen an das eDirectory weitergeleitet werden können, während bei Windows-Plattformen alle Änderungen über spezielle Mechanismen sowohl zum NAM als auch in die systemeigene SAM (Security Account Manager) beziehungsweise das Active Directory repliziert werden. Damit muss sich Novell aber beispielsweise von Microsoft auch nicht mehr den Vorwurf gefallen lassen, nicht offiziell unterstützte Schnittstellen zu nutzen.
Novell hat bei den NAM 3 nicht nur die Architektur grundlegend überarbeitet, sondern auch den Installations- und Konfigurationsprozess. Die Installation lässt sich am einfachsten über Links in der readme.html starten. Bevor man sich aber an die Installation macht, müssen erst die Systemvoraussetzungen erfüllt sein. Dazu gehört das eDirectory ab der Version 8.6.2, DirXML auf dem Server mit den Manager Services und Novell SecretStore auf allen Servern, auf die die Partition mit den Informationen des NAM repliziert wird.
Novell SecretStore ist eine Erweiterung des eDirectory für die sichere Speicherung von Kennwörtern anderer Systeme. Da Kennwörter beispielsweise von UNIX-Systemen durch das NAM im eDirectory abgelegt werden, ist die Komponente aus Sicherheitsgründen unverzichtbar. Weil ausserdem mit einer sehr neuen Version des SecretStore gearbeitet wird, muss zusätzlich im Regelfall auch noch NICI (Novell International Cryptographic Infrastructure), die für die Verschlüsselung von Informationen zuständige Software-Komponente, aktualisiert werden.
Wenn dieser Prozess, der einige Aktualisierungen im Netzwerk erzwingen kann, abgeschlossen ist, kann der eigentliche Installationsprozess beginnen. Dabei sollte bei Windows-2000-Servern, auf denen NAM ebenfalls installiert werden kann, bereits vorab überprüft werden, dass eine Pfadangabe entweder auf das Verzeichnis mit dem eDirectory oder jenes mit der ConsoleOne gesetzt ist. In beiden Verzeichnissen findet sich die Datei ldapx.dll, die für die Zugriffe auf das eDirectory benötigt wird. Wenn die Pfadangabe nicht gesetzt ist, scheitert die Installation und muss erneut durchgeführt werden. Die Erfordernis für das Setzen der Pfadangabe ist leider nicht dokumentiert.
Abgesehen von diesem kleinen Bug lässt sich die Installation dann aber einfach und zügig durchführen, wobei der gesamte Installationsprozess sowohl für die Manager Services als auch später für Agents mit Hilfe von Assistenten gesteuert wird.
Die Administration des NAM erfolgt über eine Web-Schnittstelle. Das ist etwas irritierend, weil für den NAM eine Vielzahl von Objekten im eDirectory angelegt werden und daher ein ConsoleOne-Snap-in eigentlich die naheliegende Lösung gewesen wäre. Bedauerlich ist, dass die Web-Schnittstelle - wenn man sich denn schon dafür entscheidet - nicht einmal mit anderen Web-Administrationsschnittstellen von Novell wie dem iManager integriert ist. Positiv ist aber, dass zumindest die Nutzung dieses Werkzeugs sehr einfach ist. Wer also die Installationsvorbereitungen hinter sich gebracht und die kleinere Installationshürde überwunden hat, kann die Komponenten des NAM fast intuitiv verwalten. Aufwendiger ist allerdings die Anpassung der Platform Services - spätestens dann, wenn die Standardfunktionalität verändert werden soll und Skripts angepasst werden müssen.
Mit dem NAM hat Novell eine wirklich überzeugende Lösung für das Management heterogener Netzwerke geschaffen. Der Bastelcharakter, den Vorgängerversionen wie die NDS for NT hatten, ist verschwunden. Novell hat statt dessen eine konsistente, offene und durchdachte Software entwickelt, die schnell und einfach nutzbar ist. Dabei nutzt Novell auch konsequent seine verschiedenen Anwendungen wie DirXML oder den zunächst für Novell Single Sign-on entwickelten SecretStore.
Die Softwareanforderungen für die Nutzung des NAM sind aber mit dem eDirectory 8.6.2 und der aktuellen Version 1.1 von DirXML recht hoch. Die verschiedenen erforderlichen Module und die gelungenen, aber komplexen Platform Services führen zudem zu einem relativ hohen Lernaufwand, wenn man NAM mit einer Reihe von unterschiedlichen Plattformen integrieren möchte. Dafür gibt es aber auch die Schnittstellen für eine flexible Anpassung der Software.
Novell ist es mit dem NAM 3 darüber hinaus gelungen, das Chaos unterschiedlicher Produktbezeichnungen zu beseitigen. Während die Abgrenzung beispielsweise einer NDS Corporate Edition vom eDirectory nie wirklich gelungen ist, sind die Einsatzbereiche der beiden Anwendungen nun vollkommen klar. NAM 3 ist mit Sicherheit die beste Lösung, die Novell bisher für das Benutzermanagement und die Authentifizierung in heterogenen Systemumgebungen geschaffen hat.
Die Platform Services leiten Anforderungen für das Benutzer- und Gruppenmanagement und die Authentifizierung an die Core Services weiter. Diese verarbeiten die Anforderungen, wobei auf das eDirectory zugegriffen wird.
Die Core Services selbst bestehen aus den Manager Services, dem Event Listener und Agents. Der Manager übernimmt die zentralen Steuerungsaufgaben beim NAM. Der Event Listener erkennt die Änderungen im eDirectory und leitet sie an die Manager Services weiter, die diese dann an die Platform Services der angeschlossenen Systeme verteilen.
Die Platform Services greifen auf Agents zu, die dann direkt die Authentifizierung am eDirectory durchführen können, das als Speicher für alle Konfigurations- und Benutzerinformationen dient.