So funktionieren Verzeichnisdienste

26.03.2002 von Konstantin Pfliegl
Verzeichnisdienste gewinnen bei großen Firmennetzen immer mehr an Bedeutung. tecCHANNEL erläutert das Konzept und die Architektur der Verzeichnisdienste X.500, LDAP, Novell eDirectory sowie Microsoft Active Directory.

Immer mehr Unternehmen setzen auf weltweite und dezentralisierte Firmennetze. Dabei kommen oft verteilte Applikationen zum Einsatz. Diese können auf Rechnern im lokalen Netz, im Intranet oder über das Internet laufen.

Viele Informationen, die in den Netzen verfügbar sind, lassen sich problemlos zwischen den meisten Applikationen und Usern austauschen. Es gibt aber auch Daten, die vor unautorisiertem Einsehen und Modifikationen geschützt werden sollen.

Daher ist es von großer Bedeutung, dass die Vielzahl der Informationen über die verschiedenen User und andere Ressourcen, die über das Netzwerk verfügbar sind, kosteneffektiv und mit möglichst wenig Aufwand administrierbar sind. Voraussetzung für ein solches verwaltbares Netz ist die Integration eines Verzeichnisdienstes. Damit organisiert man die Informationen in einer einheitlichen Art und Weise. Zudem ermöglicht dies den Anwendern, mit nur einem Login auf alle Ressourcen im Netz zuzugreifen, Single Sign-on.

In diesem Beitrag erläutern wir, was Verzeichnisdienste sind und geben einen Einblick in die Konzepte und Architektur der Verzeichnisdienste X.500, LDAP, Novell eDirectory sowie Microsoft Active Directory.

Verzeichnisse und Verzeichnisdienste

Verzeichnisse sind eine Auflistung von Informationen über Objekte, die in einer bestimmten Reihenfolge gespeichert sind. Bestes Beispiel hierfür ist ein Telefonbuch. Hier sind die Namen alphabetisch geordnet, die Details zu jeder Person sind deren Anschrift und Telefonnummer.

Im Computerbereich ist ein Verzeichnis eine spezielle Datenbank, die nach Typen sortierte Informationen über Objekte enthält. So werden zum Beispiel Daten zu einem Drucker mit zusätzlichen Informationen wie Standort und druckbare Seiten pro Minute gespeichert.

Verzeichnisse erlauben es Anwendern und Applikationen, Ressourcen mit bestimmten Eigenschaften zu finden. So kann man beispielsweise ein Benutzerverzeichnis nach E-Mail-Adressen oder Faxnummern durchsuchen. Oder ein Verzeichnis wird nach dem nächstgelegenen Farbdrucker abgefragt.

Wenn der Name eines Objekts bekannt ist, beispielsweise einer Person oder eines Druckers, lassen sich die dazugehörigen Eigenschaften wie Telefonnummer oder druckbare Seiten pro Minute abrufen. Ist der Name eines bestimmten Objekts unbekannt, durchsucht man das Verzeichnis auf Objekte, die eine Voraussetzung erfüllen. Dies ist mit der Suche nach einem Handwerker im Branchenbuch vergleichbar.

Ein Verzeichnis für sich alleine ist lediglich eine Ansammlung von Informationen, auf die der Zugriff gewährleistet sein muss. Zugriffe können beispielsweise zum Suchen, Ändern oder Hinzufügen von Daten geschehen. Das Application Programming Interface (API), das diesen Zugriff ermöglicht, bezeichnet man als Verzeichnisdienst.

Beispiel eines Verzeichnisses

Ein Verzeichnis im Sinne von ISO 9594-1 ist eine baumartig strukturierte Sammlung von Daten. Es ist darauf ausgelegt, einen weit gehend statischen Inhalt zu haben und kann beliebig viele Einträge in jeder Ebene besitzen. Jedem Eintrag lassen sich wiederum beliebig viele Attribute zuordnen.

In diesem Beispiel sehen Sie sieben Verzeichniseinträge in drei Ebenen und ihre jeweiligen Attribute. Die Blätter des Baumes sind die Mitarbeiter, darüber befinden sich die jeweiligen Abteilungen, in denen diese tätig sind. An der Wurzel befindet sich die Firma selbst.

X.500

Bei X.500 handelt es sich um eine Empfehlung für einen Verzeichnisdienst von der International Telecommunication Union (ITU) im Rahmen der X-Serie (Data Networks and Open System Communications). Die Empfehlung erschien erstmals im Jahr 1988. Eine der Hauptaufgaben der ITU ist es, internationale Standards zur weltweiten Kommunikation vorzuschlagen.

Die Empfehlung von X.500 besteht aus zehn Dokumenten. Alle sind auch unter ISO 9594-1...10 als Standard von der International Organization for Standardization (ISO) aufgenommen worden.

Vielen dürften die Empfehlungen der ITU bezüglich der V-Reihe (Data Communication Over The Telephone Network) bekannt sein. Diese sollen eine Kommunikation über Modem ohne technische Inkompatibilitäten ermöglichen. Bekannte Standards dieser Reihe sind beispielsweise V.90 oder V.32bis.

Aufbau eines X.500-Verzeichnisses

Der Grundgedanke von X.500 ist ein globales und verteiltes Verzeichnis, auf das man von überall zugreifen kann. Es ist baumartig strukturiert mit einem namenlosen Wurzelobjekt, der Root. Die durch das Verzeichnis bereitgestellten Daten bezeichnet man als Directory Information Base (DIB), den Baum selbst als Directory Information Tree (DIT).

Für die Einträge sind Objektklassen definiert, wobei jeder Eintrag mindestens einer dieser Klassen angehört. Innerhalb jeder Objektklasse gibt es wiederum Attributtypen, von denen mindestens einer vorhanden sein muss.

Somit ist jeder Eintrag in einem X.500-Verzeichnis also die Instanz einer oder mehrerer Objektklassen und enthält einen oder mehrere Werte für die einzelnen Attributtypen. Eine Sonderform sind so genannte Alias-Einträge, die einen einzigen Eintrag an verschiedenen Stellen im Baum ermöglichen. Diesen Eintrag braucht man somit bei Änderungen nicht mehrfach zu pflegen.

Beispiel eines X.500-Verzeichnisbaums

Unser Beispiel zeigt einen Ausschnitt aus einem X.500-Verzeichnis. Jeder Eintrag gehört jeweils einer Objektklasse an, von welcher der Wert des Hauptattributtyps, auch Primary Distinguished Value genannt, angegeben ist. Der Eintrag "C=DE" gehört also der Objektklasse "Country" an. Der Hauptattributtyp ist "C" wie "Country", und der Wert ist "DE" für Deutschland.

Der Eintrag "CN=Fritz Müller" hingegen ist eine Instanz der Objektklasse "Person" mit "Fritz Müller" als Wert des Hauptattributtyps "Common Name" (CN).

Einträge im Verzeichnisbaum müssen eindeutig sein. Daher benötigt jeder Eintrag einen so genannten Distinguished Name (DN). Dieser wird erzeugt, indem man alle Objekte im Verzeichnisbaum, vom entsprechenden Eintrag bis zur Wurzel, abbildet. Hierzu verwendet man den Wert des Primary Distinguished Value der Hauptobjektklasse (Distinguished Value). In unserem Beispiel wäre das für Fritz Müller demnach "CN=Fritz Müller, OU=Kaufmännischer Geschäftsführer, O=Geschäftsführung, C=DE".

Es gibt keine genaue Definition, wie der Distinguished Name dargestellt wird. Die in diesem Beitrag verwendete Form entspricht der in RFC1779 festgelegten.

Neben dem Distinguished Name gibt es noch den Relative Distinguished Name (RDN). Dieser ist ein Teil des Namens, der ein Attribut des Objekts selbst darstellt. Im vorhergehenden Beispiel lautet der RDN des Benutzerobjekts "CN=Fritz Müller". Der RDN des übergeordneten Objekts lautet "OU=Kaufmännischer Geschäftsführer".

X.500: Benutzerzugriff

Für den Verzeichnisdienst bietet X.500 eine Reihe von Operationen. Diese ermöglichen den Zugriff auf das Verzeichnis über einen so genannten Directory User Agent (DUA).

Operationen zum Zugriff auf den Verzeichnisdienst

Operation

Beschreibung

Read

Erlaubt das Auslesen von Attributen eines bestimmten Eintrags.

Compare

Vergleichen eines gegebenen Werts mit dem Attribut eines bestimmten Eintrags. Dies ermöglicht beispielsweise das Überprüfen eines Passworts.

List

Liefert eine Liste aller Relative Distinguished Names der Einträge, die in der Baumstruktur direkte Nachfolger eines bestimmten Eintrags sind.

Search

Ermöglicht das Durchsuchen eines Teilbereichs des Verzeichnisbaums nach bestimmten Einträgen.

Abandon

Abbrechen einer Operation. Benötigt ein Directory User Agent das Ergebnis einer Abfrage nicht mehr, kann er die Operation abbrechen.

Add

Fügt dem Verzeichnisbaum einen neuen Eintrag und entsprechende Attribute hinzu.

Remove

Entfernt einen Eintrag aus dem Verzeichnisbaum. Es können nur Einträge gelöscht werden, die im Verzeichnisbaum keine Nachfolger besitzen.

Modify

Ermöglicht Änderungen an einem Eintrag wie Löschen, Hinzufügen oder Ändern von Attributen.

Modify Distinguished Name

Erlaubt Änderungen am Relative Distinguished Name (RDN) und kann einen Eintrag und alle im Baum darunter folgenden Einträge verschieben.

Der Zugriff auf das gesamte Verzeichnis soll, wie bereits erwähnt, von überall aus möglich sein. Jedoch ist dies bei einigen gespeicherten Daten nicht erwünscht, wenn es sich beispielsweise um sensible Firmendaten handelt. Daher kann man festlegen, welche Objekte auf welche Einträge und Attribute Zugriff haben. Eine Authentifizierung kann entweder "simple" über ein Passwort oder "strong" über Public-Key-Zertifikate erfolgen. Auf diese Weise können Teile des Verzeichnisbaumes nur bestimmten Personen zugänglich gemacht werden.

X.500: Vernetzung

X.500 definiert ein verteiltes Verzeichnis. Das bedeutet, dass die Daten nicht zentral gespeichert sein müssen. Es existiert ein Netz von Servern, die jeweils nur einen Teilbaum verwalten. Bei Bedarf kommunizieren diese untereinander, beispielsweise um Anfragen weiterzuleiten, die nicht den eigenen Datenbestand betreffen. Die einzelnen Server bezeichnet man auch als Directory System Agents (DSA).

Replikation

Um Lesezugriffe auf das X.500-Verzeichnis zu beschleunigen, kann es sinnvoll sein, für einen Teilbaum mehrere Server zur Verfügung zu stellen. Zudem erhöht sich dadurch auch die Ausfallsicherheit für den entsprechenden Teilbaum.

Beim Einsatz mehrerer Server in einem Teilbaum werden die Daten repliziert. Es gibt einen Master-Server, auf dem der Datenbestand erstellt und gepflegt wird, und einen oder mehrere Slave-Server, die eine Kopie des Datenbestands speichern. Die Slave-Server holen sich in regelmäßigen Abständen vom Master-Server den aktuellen Datenbestand.

X.500: Protokolle

Die Spezifikation von X.500 definiert verschiedene Protokolle für die Bereitstellung des Verzeichnisdienstes. Diese basieren auf den sieben Schichten des OSI-Schichtenmodells. Im einzelnen sind dies folgende Protokolle:

X.500-Protokolle

Protokoll

Beschreibung

Directory Access Protocol (DAP)

Definiert die Kommunikation zwischen Directory User Agent (DUA) und Directory System Agent (DSA).

Directory System Protocol (DSP)

Zuständig für die Kommunikation zwischen Directory System Agents (DSA).

Directory Information Shadowing Protocol (DISP)

Definiert den Austausch von Informationen zur Replikation des Datenbestands zwischen einem Master- und einem Slave-Server.

Directory Operational Binding Management Protocol (DOP)

Definiert den Austausch von administrativen Informationen zwischen zwei Directory System Agents (DSA).

Implementationen von X.500

Die meisten heute verfügbaren Verzeichnisdienste basieren auf der X.500-Spezifikation. So auch Novells eDirectory und Microsofts Active Directory, die wir im Laufe dieses Artikels näher erläutern. LDAP wurde ebenfalls für die Kommunikation von Clients mit X.500-Servern entwickelt.

Siemens bietet mit DirX auch einen X.500-konformen Verzeichnisdienst an. Dieser eignet sich unter anderem zum Verwalten von Fax- und Telefonnummern, E-Mail-Adressen, Personaldaten, Rechneradressen, Benutzerprofilen und weiteren Netzwerk-Ressourcen. Der Dienst steht derzeit für Windows NT/2000 und alle gängigen Unix-Varianten zur Verfügung. Ein Zugriff auf DirX ist mit einem Webbrowser über das Web-Gateway DirXweb, über WAP mit DirXwap oder über den Client von Siemens oder einem anderen beliebigen LDAP-Client möglich.

LDAP (Lightweight Directory Access Protocol)

Anfangs fand X.500 jedoch keine besonders große Akzeptanz. Einer der Gründe hierfür ist, dass die Spezifikation die komplette Implementation des OSI-Schichtenmodells erfordert. Die Nutzung vorhandener Kommunikationsprotokolle wie TCP/IP wird nicht unterstützt. Dies ist insbesondere für die Kommunikation zwischen Directory User Agent (DUA) und Directory System Agent (DSA) ein Hindernis, da auch seitens des Client ein erheblicher Mehraufwand bei der Implementation nötig ist.

Da jedoch grundsätzlich das Interesse an einem Verzeichnisdienst wie X.500 groß war, wurde im Jahr 1993 erstmals das Lightweight Directory Access Protocol, kurz LDAP, spezifiziert. Die erste Version des Protokolls wurde in RFC 1487 ("X.500 Lightweight Directory Access Protocol") definiert und stellt eine vereinfachte Version des Directory Access Protocol (DAP) von X.500 dar. Später folgte RFC 1777. Mittlerweile existiert bereits Version 3 von LDAP, definiert in RFC 2251 ("Lightweight Directory Access Protocol (v3)"). Es enthält die Beschreibung eines kompletten Protokolls, um mit TCP/IP-basierten Clients über einen vermittelnden LDAP-Server auf ein X.500-Verzeichnis zuzugreifen.

Das Lightweight Directory Access Protocol ist zwar durch internationale RFCs definiert, jedoch noch kein offizieller Standard. Dennoch kann man bei LDAP von einem De-facto-Standard sprechen.

LDAP: Protokoll oder Verzeichnisdienst?

Was ist LDAP - ein Protokoll oder ein Verzeichnisdienst? Grundsätzlich definiert LDAP ein Kommunikationsprotokoll. Es werden der Transport und das Format von Nachrichten definiert, die von einem Client für den Zugriff auf einen X.500-konformen Verzeichnisdienst verwendet werden. Das Protokoll spezifiziert somit nicht den eigentlichen Verzeichnisdienst, sondern die Art des Zugriffs auf einen solchen.

Ein LDAP-Client greift auf den Verzeichnisdienst zu, indem er die LDAP -API aufruft. Ein X.500-Server kann jedoch mit diesen Nachrichten des Client nichts anfangen. Der LDAP-Client und der X.500-Server verwenden unterschiedliche Kommunikationsprotokolle: Der Client nutzt TCP/IP, der Server basiert auf dem OSI-Protokollstack. Daher kommuniziert der Client mit einem Gateway, der die Anfragen an den X.500-Server weiterleitet. Diesen Gateway bezeichnet man als LDAP-Gateway, der für den X.500-Server wiederum einen Client darstellt. Der LDAP-Server muss also TCP/IP und den OSI-Protokollstack implementiert haben.

Stand-alone-LDAP-Server

Als der Einsatz von LDAP weiter zunahm, wurden Verzeichnisdienste entwickelt, auf die man direkt mit einem LDAP-Client zugreifen konnte. Dies macht einen X.500-Server weit gehend überflüssig. Der LDAP-Server kann somit direkt auf das Verzeichnis zugreifen, anstatt nur als Gateway zu dienen.

Einen LDAP-Server, der direkt auf ein Verzeichnis zugreifen kann, bezeichnet man als einen Stand-alone-LDAP-Server. Stand-alone deswegen, da dieser von einem X.500-Server unabhängig ist.

Seitens der Clients ist nun jeder Server, der das LDAP-Protokoll implementiert hat, ein LDAP-Verzeichnisdienst-Server. Unabhängig davon, ob dieser nun als Gateway oder als Stand-alone-Server seinen Dienst verrichtet. Das Verzeichnis, auf das hierüber zugegriffen wird, nennt man LDAP-Verzeichnis.

Einer der bekanntesten Stand-alone-LDAP-Server ist slapd, eine Open-Source-Implementation von OpenLDAP.

Architektur von LDAP

Wie bereits erwähnt basiert das Lightweight Directory Access Protocol auf einem Client/Server-Modell. LDAP hat sich im Laufe der Jahre weit verbreitet.

Der Erfolg von LDAP basiert nicht zuletzt auf folgenden Vorteilen gegenüber X.500 beziehungsweise dem Directory Access Protocol (DAP):

LDAP definiert den Inhalt von Nachrichten zwischen Client und Server. Die Nachrichten spezifizieren, welche Operation der Client ausführen will, wie Search oder Modify, und die entsprechende Antwort vom Server. Zudem wird festgelegt, wie die eigentlichen Verzeichnisdaten in der Nachricht transportiert werden sollen. Da LDAP auf TCP/IP basiert, einem verbindungsorientierten Protokoll, werden auch Operationen zum Verbindungsauf- und -abbau durchgeführt. Details zum TCP/IP-Protokoll erfahren Sie im tecCHANNEL-Beitrag "So funktioniert TCP/IP".

Novell eDirectory

Novells Directory Service (NDS) ist ein auf X.500-basierender Verzeichnisdienst zur Verwaltung von Usern, Zugriffsrechten und anderen Netzwerkressourcen. NDS 8, erstmals mit Netware 5 veröffentlicht und mittlerweile marketing-strategisch in eDirectory umbenannt, soll laut Hersteller eine größere Funktionalität als alle vorherigen Versionen bieten.

Im Rahmen seiner "One-Net"-Strategie stellt Novell den Verzeichnisdienst-Server für alle wichtigen Plattformen zur Verfügung: Netware ab Version 5, Windows NT/2000, Linux und Solaris.

eDirectory vereinfacht das Management von Usern und Ressourcen in einem Netzwerk mit Windows NT/2000, Netware und Unix/Linux. Der Dienst unterstützt dabei bestehende Standards wie LDAP, DNS, LDIF (Lightweight Data Interchange Format), XML, XSL, XSLT, ADSI (Active Directory Service Interface, Microsofts proprietäre API), ODBC sowie JDBC.

Die Architektur von Novells eDirectory basiert auf zwei Hauptkomponenten:

Die Directory Service Agents (DSAs) sind die Haupt-Serverkomponenten. Diese speichern unter anderem die Verzeichnisinformationen, Informationen über Replikationen sowie die Daten selbst. Applikationen und Services greifen auf die DSAs über diverse Standard-Protokolle zu, wie beispielsweise LDAP oder über das Novell Directory Access Protocol (NDAP), Novells proprietäres Zugangsprotokoll für Verzeichnisdienste.

Die Directory Clients sind eine Komponente der Novell Client-Software. Diese ermöglicht auch anderen Novell-Produkten, wie beispielsweise ZENworks, den Zugriff auf eDirectory.

eDirectory - Architektur

Das eDirectory basiert auf drei "Ebenen", mit denen sich die Architektur des Verzeichnisdienstes beschreiben lässt: Logical Plane, Physical Plane und Schema Plane. Jede dieser Ebenen deckt einen Teil des gesamten Verzeichnisdienstes ab.

Die Physical Plane beschreibt, wie die Organisation physikalisch aufgebaut ist und in der Verzeichnisdienst-Datenbank repliziert wird. Den Baum des eDirectory kann man als einen großen Teilbaum auf einem Server oder als mehrere kleine auf mehrere Server verteilt speichern. Die einzelnen Teilbäume bezeichnet man als Partitionen. Jede kann eine oder mehrere Kopien besitzen, auch Replicas genannt.

Die Logical Plane ist das, was der Administrator bei der Verwaltung mit den eDirectory-Management-Tools sieht. Zu den Management-Tools zählen unter anderem die ConsoleOne und der NWAdmin. Unabhängig davon, wie der Verzeichnisdienst gespeichert wird, verwaltet man diesen stets als ein einziges logisches Verzeichnis.

Die Schema Plane beschreibt unter anderem, welche Art von Objekten das eDirectory besitzen kann, die Art der Attribute und wie diese repliziert werden. Zusätzlich werden hier Größe und Art von Daten festgelegt.

eDirectory - Objekte

Novells Verzeichnisdienst kann eine Reihe von Objekten verwalten, die Geräte und Ressourcen in einem Netzwerk vertreten. Dies können zum Beispiel User, Gruppen, Drucker, Datenbanken, Applikationen und Fileserver sein. Es lassen sich nach Belieben neue Objekte durch Ausbauen des Verzeichnisschemas hinzufügen. Dies können unter anderem Faxserver und Router sein.

Objekte im eDirectory unterteilt man in zwei Klassifikationen:

Leaf Objects repräsentieren Benutzer und Netzwerkressourcen wie Server, Drucker und Router. Ein Leaf Object kann kein anderes Objekt enthalten. Zudem darf es nicht das einzige Objekt einer Partition sein.

Container Objects können - wie der Name bereits sagt - andere Objekte enthalten, also beispielsweise Leaf Objects und weitere Container Objects.

Durch Hinzufügen eines Container Objects in ein selbiges legt man die Hierarchie fest und vereinfacht den Zugriff. Container Objects sind die kleinste Einheit für eine Partition und Replikation.

Microsoft Active Directory

Mit Windows 2000 brachte Microsoft erstmals einen X.500-konformen Verzeichnisdienst auf den Markt: Active Directory. Der Dienst ermöglicht Replikationen und Abfragemöglichkeiten nach den Internet-Standards LDAP, DNS und DDNS (Dynamisches DNS). Jedoch ist Microsofts Active Directory derzeit lediglich für Windows-Systeme verfügbar.

Microsofts Verzeichnisdienst bietet folgende Eigenschaften:

Komponenten des Active Directory

Der Aufbau des Active Directory ist vergleichbar mit dem Konzept des DNS. Ein Namensraum ist ein Name oder eine Gruppe von Namen, die nach einer Konvention definiert wurden. Das Internet nutzt einen hierarchischen Namensraum, der die Namen in Top Level Domains aufteilt, wie zum Beispiel .com oder .org. Active Directory verwendet dieses hierarchische Modell zum Aufbau des Netzwerks.

Bei seiner Installation entwickelt Active Directory eine Hierarchie, in der jede Domäne, jede Organisationseinheit und jede Ressource einen eindeutigen Namen im Namensraum erhält. Jedes Objekt in Active Directory ist durch seinen spezifischen Namen bekannt, der in der hierarchischen Verzeichnisstruktur eingebettet ist.

Wie bei Novells eDirectory besteht die Möglichkeit, andere Verzeichnisdienste über LDAP-Mechanismen zu integrieren.

Logische Elemente von Active Directory

Im Active Directory gibt es drei verschiedene logische Elemente:

Objekte: Ein Objekt ist ein im Verzeichnis enthaltener Bestandteil, der eine Reihe von Attributen besitzt. Beispiele hierfür sind User oder Drucker. Ein Objekt kann auch ein Container für andere Objekte sein.

Objektattribute: Alle Objekte im Verzeichnis haben Attribute oder Eigenschaften. In Microsoft Active Directory werden beide Begriffe austauschbar verwendet. Ein Attribut ist eine Menge von Informationen. Objekte im gleichen Container besitzen dieselben Attribute.

Objektklassen: Active Directory gruppiert Objekte nach ihren Attributen. Alle Objekte werden hierdurch kategorisiert, beispielsweise als User oder Drucker. Diese logische Gruppierung ist für die Organisation der Ressourcen im Verzeichnis zuständig.

Strukturelle Komponenten von Active Directory

Neben Blattobjekten gibt es in Active Directory auch strukturelle Komponenten. Diese helfen, die Hierarchie des Verzeichnisses aufzubauen.

Hierzu zählen die Container, also Speicher für andere Objekte im Verzeichnis. Dabei gibt es zwei wesentliche Kategorien von Containern:

Domänen: Eine Domäne stellt eine Sicherheitsgrenze in einem einzelnen Computernetzwerk dar. Active Directory besteht aus einer oder mehreren Domänen. Auf einer eigenständigen Arbeitsstation stellt der Computer selbst die Domäne dar. Eine Domäne kann mehr als einen physischen Standort umfassen. Jede Domäne verfügt über eigene Sicherheitsrichtlinien zu anderen Domänen. Wenn mehrere Domänen durch Vertrauensstellungen verbunden sind und eine gemeinsame Konfiguration verwenden, liegt eine Domänenstruktur vor.

Organisationseinheiten: Eine Organisationseinheit schafft eine weitere Unterteilung der Verzeichnisstruktur. Hier können beliebige Hierarchien innerhalb einer Domäne angelegt werden.

Relationale Komponenten von Active Directory

Eine weitere wichtige Untermenge der Unterteilungskomponenten bestimmt die Relation zwischen Domänen. Hierzu gehören folgende Komponenten:

Baum: Für viele Unternehmen ist es praktischer, mehrere Domänen zu verwalten, obwohl dies technisch nicht nötig ist. Durch die Verwendung mehrerer Domänen wird eine Hierarchie geformt, die einen zusammenhängenden Namensraum hat und Baum genannt wird. Dieser formt eine logische Top-Level-Struktur, in der die Domänen relativ zueinander eingehängt sind. In einem Baum sind die Domänen miteinander über Vertrauensstellungen verbunden.

Forest: Heutzutage kommt es häufig vor, dass Unternehmen aufgekauft und in andere eingegliedert werden. Um in diesem Fall verwaltbare Einheiten schaffen zu können, entwickelte Microsoft das Konzept des Forest. Es erlaubt die Koexistenz von zwei verschiedenen Namensräumen.

Global Catalog Server: Im Beitrag wurde bereits der Global Catalog Server erwähnt. Dieser wird durch die Replikation des Verzeichnisdienstes aufgebaut und enthält eine Kopie aller Objekte im Baum. Man kann sich diesen Server als einen Index auf das gesamte Netzwerk vorstellen. Der Server speichert eine Kopie von jedem Objekt im Directory.

Fazit

Dieser Beitrag soll Ihnen einen Einblick in die Konzepte und Architekturen der wichtigsten Verzeichnisdienste bieten. Es gibt - neben den hier vorgestellten - zahlreiche weitere Funktionen der einzelnen Verzeichnisdienste. Sie zu beschreiben, würde aber den Rahmen dieses Artikels sprengen.

Die hier vorgestellten Verzeichnisdienste, eDirectory, Active Directory und LDAP, basieren alle auf X.500, der gemeinsamen Spezifikation für Verzeichnisse und -dienste. LDAP kann man als "Add-on" oder kleinsten gemeinsamen Nenner betrachten, da mit diesem Kommunikationsprotokoll ein Zugriff auf alle Dienste möglich ist.

Es ist davon auszugehen, dass Verzeichnisdienste in den nächsten Jahren immer öfter eingesetzt werden. Damit lassen sich weltweite Firmennetze kosteneffektiv und mit vergleichsweise wenig Aufwand in einer einheitlichen Art und Weise administrieren.

Die Hersteller der einzelnen Directories haben Vergleiche zwischen ihren eigenen und den Konkurrenzprodukten veröffentlicht. Soll bei diesem Vergleich eDirectory besser abschneiden, sollten Sie sich den Vergleich von Novell ansehen. Soll das Active Directory beim Vergleich als Sieger hervorgehen, ist Microsofts Produktvergleich das Rsichtige für Sie. (kpf)