Verzeichnisdienst LDAP/OpenLDAP. Stefan Drzazga 02INF

Größe: px
Ab Seite anzeigen:

Download "Verzeichnisdienst LDAP/OpenLDAP. Stefan Drzazga 02INF2 09440"

Transkript

1 Verzeichnisdienst LDAP/OpenLDAP Stefan Drzazga 02INF

2 Inhaltsverzeichnis 1 Der Verzeichnisdienst Objektorientierte Strukturen Der Weg zu LDAP LDAP im Einsatz Die Administration in Netzwerken mit LDAP 8 2 Grundlagen X Objekte Attribute Verzeichniseinträge Vererbung Polymorphismus in Klassen Standardisierung von Attributen und Objektklassen Objektklassentypen Verzeichnisbaum Aliase Referenzierung durch Namen Relative Distinguished Name Zusammengesetzter RDN Überführung RDN zu DN 19 3 Die LDAP Sitzung Messages und Operationen 20 4 Die Verteilung des Verzeichnisses Naming Context Referrals und Continuations 23 5 Sicherheit Zugriffskontrolle im LDAP Authentifizierung Der Strong Bind 27 6 Schema Klassen unter LDAP Allgemeiner Aufbau eines Schemas Eigene Schemata entwerfen Referenzierung von Objekten durch Name oder OID Der Object Identifyer (OID) AttributeTypes ObjectClasses 32 7 Das LDIF Die Anweisungen Versionsnummer Datensatz 35 8 Ein Blick in die Zukunft 36 Literaturverzeichnis 38 2

3 1 Der Verzeichnisdienst Für was und und warum brauchen wir eigentlich Verzeichnisdienste, wo wir doch die große Auswahl zwischen relationalen Datenbanken, Textdateien oder andere Möglichkeiten für die Haltung unserer Daten haben? Dabei liegen die wesentlichen Vorteile auf der Hand: auf Verzeichnisse wird meist meistens eher lesend als scheibend zugegriffen, ein Verzeichnis organisiert seine Daten in einer baumartigen Hierarchie, dem Verzeichnisbaum, die Teilbäume des Verzeichnisbaums können auf unterschiedliche Hosts verteilt sein, Teilbereichen des Verzeichnisbaums können durch Delegation einfach administriert werden, durch den Verzeichnisbaum wird es ermöglicht, das Suchen von vornherein auf interessante Teilbäume zu beschränken, viele Verzeichnisdienste basieren auf dem X.500-Modell und unterstützen damit von vornherein ein objektorientiertes Datenmodell Ein einfaches Beispiel für die Anwendung eines Verzeichnisses stellt das Domain Name System dar. Selbst wenn man sich darauf beschränkt, das DNS nur als ein System zur Abbildung von menschenlesbaren Zonennamen wie,, auf IPv4- Adressen wie,, wahrzunehmen, dann erkennt man, dass zur Bewältigung dieser Aufgabe ein System mit verteilter Datenhaltung und Administration notwendig ist. Man erkennt auch, wie die oben aufgelisteten Vorzüge von Verzeichnisdiensten im Jahre 1984 gefällte Entscheidung beeinflussten, zur Verwaltung der Zonennamen in Zukunft einen Verzeichnisdienst zu verwenden. Ein deutlicher Anwendungsfall für Verzeichnisse ist die Abbildung von Organisationen. Die Tatsache, dass Organisationen dazu neigen, hierarchisch aufgebaut zu sein, harmonisiert mit dem hierarchischen Aufbau eines Verzeichnisbaumes. In diesem Zusammenhang erweist sich auch die Option, die Verwaltung von Teilbäumen nach unten zu delegieren als vorteilhaft: In einem Konzern können kleinere Organisationseinheiten, z.b. die Niederlassungen einzelner Teilfirmen, ihre eigenen Verzeichnisse aufbauen; Teilfirmen können die Verzeichnisse ihrer einzelnen Niederlassungen oder Abteilungen zusammenfassen und die Verzeichnisse der 3

4 Teilfirmen werden auf der Ebene des Konzerns gemeinsam erfasst, so dass man ganz oben den vollen Überblick hat. Die Administration eines solchen organisationsorientierten Verzeichnisses kann bis zur Ebene der einzelnen Benutzer herunter delegiert werden: Adressverzeichnisse, in denen die Benutzer ihre eigenen Adressbucheinträge unter Benutzung eines Web-Frontends selber verwalten sind ein Beispiel für diese Art der Delegation(User Based Administration). 1.1 Objektorientierte Strukturen Aber welche Daten sollte eine Firma überhaupt in einem Verzeichnis erfassen wollen? Sehr oft werden zum Beispiel die Daten der Angestellten einer Firma erfasst. Diese Datensätze können Dinge wie Namen, Adressen, Telefonnummern, -Adressen oder Ähnliches enthalten. In einer Tabelle muss für jedes Element des Datensatzes eine Tabellenspalte vorgesehen sein. Bei Verzeichnisdiensten, die dem X.500-Standard entsprechen, verwendet man stattdessen so genannte Objektklassen, um die Struktur der Datensätze zu beschreiben. Was geschieht nun, wenn es notwendig wird, die Personendatensätze um eine neue Komponente zu erweitern? Es wird zum Beispiel in der Praxis oft nötig, die Verwaltung von -Adressen oder kryptographischen Schlüsseln nachträglich in Verzeichnisse zu integrieren. Während eine solche Änderung bei einer relationalen Datenbank entweder die Erweiterung oder das Neuanlegen einer Tabelle erfordert beides Änderungen, die zentral erfolgen müssen ; kann man bei einem X.500-kompatiblen Verzeichnis durch Vererbung eine neue Objektklasse erzeugen, die eine vorhandene Klasse um das entsprechende Feld erweitert. Diese Veränderung des Verzeichnisses kann auch auf einer niedrigen administrativen Ebene erfolgen, was es ermöglicht, Verzeichnisse ohne zentrale Eingriffe flexibel an die Erfordernisse niedriger Hierarchieebenen anzupassen. 1.2 Der Weg zu LDAP Mit den X.500-Standards und LDAP haben sich zwei Arten von Spezifikationen für Verzeichnisdienste etabliert, die in einer sehr engen Beziehung zueinander stehen. Dies hat vor allem historische Gründe, die bis auf das frühe PC- und Client/Server-Zeitalter zurückgehen. In dieser Frühzeit vor und bis etwa zum Jahr 1985 existierten in den typischen Firmennetzen allerlei historisch gewachsenen Systemarchitekturen nebeneinander her. Der Datenaustausch zwischen verschiedenen Systemen gestaltete sich aber meist schwierig oder 4

5 war mitunter unmöglich, da es entweder keine oder nur sehr schlechte Schnittstellen zwischen den verschiedenen Systemen gab. Mit der fortschreitenden Computerisierung der Arbeitsplätze verstärkte sich aber das Bedürfnis, Daten auch zwischen verschiedenen Systemen austauschen zu können. Typischerweise wollte man mit dem MAC, PC oder Amiga am Arbeitsplatz auf einen Unix-Server bzw. eine Mainframe im Hintergrund zugreifen. Bei der Entwicklung von Interfaces, die ad hoc zwei Architekturen miteinander verbanden, geriet man schnell in ein Dilemma. Dieser Ansatz hat nämlich einen entscheidenden Nachteil:Der Aufwand wuchs quadratisch mit der Anzahl der zu verbindenden Systeme. Erschwerend kam hinzu, dass man zur Implementation eines Interfaces zwischen System A und System B Kenntnisse der Systeme A und B haben musste. Die langfristig bessere Alternative zum oben beschriebenen Interfacemodell stellt das Schichtenmodell dar. Dabei wird ein zentrales Kommunikationsprotokoll definiert, so dass auf jedem der zu verbindenden Systeme nur eine Schnittstelle zu diesem zentralen Protokoll implementiert werden muss. Bekanntlich setzte sich im Laufe der 80er Jahre die Erkenntnis durch, dass der bessere Weg zur gewünschten Interoperabilität ein solches gemeinsames Kommunikationsprotokoll zum Datenaustausch ist. Aus der Sicht dieser Zeit boten sich zwei Möglichkeiten an, um zu einer solchen universellen Kommunikationsschicht zu kommen: 1. Der komplette Neuentwurf einer solchen Schicht. 2. Die Adaption der TCP/IP-Protokollfamilie. Der Aufgabe des universellen Neuentwurfes widmete sich die CCITT(Comité consultatif international télégraphique et téléphonique), eine Unterorganisation der Vereinten Nationen mit Sitz in Genf, die später zur International Telecommunication Union (ITU) mutierte. Die ITU produzierte im Laufe der Jahre zahlreiche Standards, die als X-Serien bekannt sind, da sie Kurzbezeichnungen haben, die mit einem großen X beginnen(z.b. X.200, das ISO/OSI- Modell). Auch für Verzeichnisdienste existieren eine Reihe von X Standards: die X.500 Serien. Diese X.500-Standards definieren, wie Verzeichnisdaten zur Verfügung gestellt und abgerufen werden sollen, wie Verschlüsselung,Authentifizierung, Replikation und Verwaltung der Verzeichnisdaten gehandhabt werden, und zu guter letzt liefern sie die funktionalen Modelle und den Begriffsapparat auch für solche Verzeichnisdienste, die nicht mehr vollkommen auf dem X.500-Standard beruhen, namentlich für LDAP. X.500 definiert zwei Subprotokolle namens DSP und DAP. Ersteres steht für Directory System Protocol, letzteres bedeutet Directory Access Protocol. Während das DSP zur 5

6 Kommunikation der Server untereinander gedacht ist, soll das DAP zur Interaktion zwischen Benutzerprozess und Serverprozess dienen. (In der X.500-Terminologie wird die Clientanwendung als Directory User Agent, kurz DUA, die Serveranwendung Directory Server Agent oder kurz DSA genannt). Das DAP erwies sich aber in gewisser Weise als Hemmschuh für die weitere Verbreitung von X.500-basierten Directory Services. Während nämlich die X.500-Standards auf dem komplizierten 7-schichtigen OSI Modell basieren, setzte sich in der Praxis das einfachere TCP/IP-Modell als Standard für die Vernetzung unterschiedlicher Systeme durch. Ab Mitte der 90er Jahre wurden immer mehr lokale Netze mittels der Protokolle aus dem TCP/IP- Modell zu Intranets verbunden oder an das Internet angeschlossen. Mit dieser Entwicklung hin zu großen, potenziell unübersichtlichen Netzen tat sich für Verzeichnisdienste eine Fülle von neuen Einsatzmöglichkeiten bei der Verwaltung solcher Netze auf. Die Entwicklung von Clients wurde aber durch die Komplexität des DAP- Protokolls erschwert: DAP setzt auf der Transportschicht des ISO Protokollstacks, und nicht auf dem verbreiteten TCP auf. Ein OSI Protokollstack war in den Desktop-Betriebssystemen nicht implementiert und hätte wahrscheinlich auch die damalige Hardware völlig überfordert. Ein TCP/IP-Stack konnte hingegen selbst bei den 16-bittigen DOS/Windows-Versionen nachgerüstet werden. Heute findet man IP Stacks auch schon in Telefonen und Spielkonsolen. Als Ausweg aus dem DAP-Dilemma wurde im Juli 1993 im RFC 1487 das Lightweight Directory Access Protocol spezifiziert. Die Essentials beim Entwurf dieses Protokolls waren: 1. Das LDAP sollte eine wesentliche Teilmenge des DAP-Protokolls implementieren. 2. Das LDAP sollte direkt auf der TCP-Schicht aufsetzen, damit der OSI-Overhead entfallen konnte. Ebenfalls im Juli 1993 wurde von den Autoren des RFC 1473 an der University of Michigan (UMich) die erste LDAP-Implementation ldapd vorgestellt. Eine überarbeitete LDAP-Version LDAPv2 wurde im Jahr 1995 vorgestellt und in den ldapd implementiert. LDAPv2 ist nach wie vor weit verbreitet und wird nur langsam durch LDAPv3 verdrängt. Ein weiteres Update der LDAP-Spezifikation erfolgte 1997 mit RFC 2251, der die dritte Version des LDAP (LDAPv3) spezifiziert. 6

7 Seit August 1998 wird das LDAP-Projekt der UMich unter dem Namen OpenLDAP von einer eigens gegründeten Non-Profit-Organisation, der OpenLDAP Foundation koordiniert. 1.3 LDAP im Einsatz Die ursprüngliche Idee hinter LDAP war, dass dieses Protokoll serverseitig durch eine Middleware implementiert werden sollte, die per LDAP mit den Clients und über die X.500-Protokolle mit einem oder mehreren X.500-DSP(s) kommuniziert. Abbildung XX zeigt diesen typischen Anwendungsfall. Für den wachsenden Erfolg von LDAP ist aber auch ein Paradigmenwechsel mitverantwortlich, durch den sich die Einsatzgebiete dieses Protokolls verlagern, und zwar weg von einer Middleware, die zwischen TCP/IP und X.500 vermittelt, hin zu einer Serversoftware die LDAP-fähigen Clients den Zugriff auf eine fast beliebige Datenbasis vermittelt. OpenLDAP enthält einen slapd genannten Standalone LDAP Daemon, mit dem man auf verschiedene Backends zugreifen kann. Trotz der partiellen Abkehr von der X.500-Datenhaltung kann LDAP aber seine Wurzeln nicht verleugnen, denn wie auch immer das Backend geartet ist, die Grundlage für das zugrunde liegende Datenmodell, basiert nach wie vor auf den X.500-Standards. Die aktuelle LDAP-Version ist LDAP Version 3, kurz LDAPv3 genannt. LDAPv3 ergänzt die Version 2 in vielerlei Hinsicht. Neuheiten umfassen u.a: starke Authentifizierung durch SASL, optionaler Integritätsschutz und Verschlüsselung durch das auf SSL basierende TLS-Protokoll, Internationalisierung durch Unicode, Verweise auf andere LDAP-Server, so genannte Referrals und Continuations, Veröffentlichung der Datendefinition durch den Server (Schema Discovery). Die Kernbestandteile von LDAPv3 werden in einer Reihe von RFCs, den so genannten LDAPv3 Core Specifications beschrieben. Der Name Core Specs lässt bereits ahnen, dass auf der Grundlage dieser Spezifikationen weitere Spezifikationen entstanden sind. Die Internet Engineering Task Force (IETF) hat dazu eine Expertengruppe, die LDAP Extension Working Group eingerichtet. Die Intension dieser Gruppe ist es u.a. sich mit den Themen: Authentifizierung und 7

8 Verschlüsselung, Verarbeitung von Suchergebnissen, dynamische Verzeichnisse und Standardisierung von APIs für die Cliententwicklung auseinander zu setzen. 1.4 Die Administration in Netzwerken mit LDAP Obwohl man mit Verzeichnisdiensten und deren unaufwändigster Variante LDAP vom Kaufhauskatalog bis zum weltweiten Telefonbuch allerlei schöne Dinge realisieren kann, ist es der Einsatz von LDAP zur Verwaltung von Netzwerkinformation, der ein starkes Interesse an LDAP auslöst. LDAP ist in die Verzeichnisdienste NDS (Novell) und ADS (Microsoft) integriert und erlaubt es endlich, Benutzerinformationen für heterogene Netzwerke zentral zu verwalten. Im Idealfall hat der Anwender mit einem Username und Passwort Zugriff auf alle Informationen im Netz und der Administrator seine Ruhe, da er sich nicht mehr um die Benutzerverwaltungen kümmern muss. RFC 2307 beschäftigt sich schon mit der zentralen Verwaltung weiterer Netzwerkinformation mittels LDAP: Benutzer und Gruppen (/etc/passwd, etc/groups), IP-Dienste (Zuordnung zwischen Diensten, Portnummern), IP-Protokolle (/etc/protocols), RPCs (Zuordnung von Remote-Procedure-Call-Nummern zu RPC-Diensten wie in /etc/rpc), NIS-Informationen, Boot-Informationen (MAC-Adressen und Boot-Parameter), Mountpoints für Dateisysteme (/etc/fstab), Mail-Aliase. 8

9 2 Grundlagen X.500 Die Welt der X.500 Protokolle und das davon abgeleitete LDAP besteht aus,,objekten. Wer Vorkenntnissen in objektorientiertem Design hat wird feststellen, dass wesentliche OO- Konzepte wie,,objekte,,,klassen,,,vererbung,,,polymorphie und deren intensive Wiederverwertung in der Welt des X.500 wichtige eine Rolle spielen, wenn auch manchmal unter verändertem Namen. Die Aufgabe des Verzeichnisses ist es, die Objekte abzubilden und miteinander in Beziehung zu setzen. Ein Objekt wird im Verzeichnis durch einen Verzeichniseintrag repräsentiert. Der Verzeichniseintrag besteht im Wesentlichen aus einer Liste von Eigenschaften des Objektes, den so genannten Attributen, sowie aus einem Namen, dem Distinguished Name. Wie der Name einer Datei im Dateisystem oder der Name einer Zone im DNS wird der Distinguished Name in einen hierarchischen Namensraum eingeordnet. Auf diese Weise entsteht eine Baumstruktur, in der die Einträge angeordnet sind, der Directory Information Tree. Abbildung 1 zeigt einen Ausschnitt aus den Organisationsverzeichnis der Firma MySQL AB, die aus einem Mitarbeiter und aus einem Notebook besteht. Organisation O: MySQL AB L: Hamburg DESC: MySQL Niederlassung Deutschland Person cn: Michael Monty Widenius telephonenumber: Abbildung 1 - DIT der Firma MySQL Device cn: MyNotebook serialnumber: Im Verzeichnis der MySQL AB finden wir alle Elemente eines Verzeichnisses wieder: einen Verzeichnisbaum, der die Firma in der Hierarchie höher ansiedelt als beispielsweise den Mitarbeiter oder den Notebook, Einträge für die Firma, den Mitarbeiter und den Notebook, viele Attribute: O, L und DESC für die Firma, 9

10 CN und telephonenumber für den Mitarbeiter, CN und serialnumber für das Notebook. Man kann an diesem Beispiel auch erkennen, dass Einträge und Attribute einer Standardisierung unterliegen: Einträge gehören zu bestimmten Objektklassen, die die Attribute des Eintrages vorschreiben. Hier sind das die Objektklassen Organisation, Person und Device für die Firma, den Mitarbeiter und das Notebook. Auch die hier verwendeten Attribute sind standardisiert. Dies merkt u.a. daran, dass die Namen der meist verwendeten Attribute bis zur Unkenntlichkeit abgekürzt sind, zum anderen sieht man, dass das Attribut cn sowohl beim Mitarbeiter (Person) als auch beim Notebook (Device) vorkommt. Die Bedeutung der nicht offensichtlichen Attributnamen ist die folgende: O: Organisation, der Name einer Organisation. L: Location, ein geographischer Ort. DESC: Description, menschenlesbare Beschreibung. CN: Common Name, der Name, unter dem das Objekt gewöhnlich angesprochen wird. 2.1 Objekte Was ist ein Objekt? Diese Frage kann an dieser Stelle gar nicht wirklich beantwortet werden, denn die Objekte der realen Welt sind etwas Vorgegebenes, etwas, das man zu akzeptieren und mit dem man zu arbeiten hat. Trotzdem ist eine wichtige Eigenschaft die folgende: Ein Objekt verfügt über einen Menge von Eigenschaften (Attribute). Ein besonderes Attribut ist der Name des Objektes. Natürlich hat ein Objekt in der realen Welt, wie z.b. ein Mensch, eine große Zahl von Eigenschaften. Dies ist aber für die maschinelle Verwaltung von Objekten von geringer Bedeutung, da es üblicherweise nur wenige standardisierte Attribute sind, die an einem Objekt interessieren. Für die Postzustellung ist es eher uninteressant, ob ein Mensch eine besondere musikalische Begabung hat, hier interessieren lediglich der Name und die Anschrift. Man fasst daher Objekte zu Objektklassen (engl.: object classes) zusammen. Eine solche Objektklasse besteht aus einem Satz von notwendigen und/oder optionalen Attributen, mit denen sich ein Objekt dieser Klasse beschreiben lässt. Für die Postzustellung könnte dies z.b. die standardisierte Objektklasse residential Person sein. 10

11 2.2 Attribute Verglichen mit den Feldern eines Datensatzes im relationalen Modell sind die Attribute des X.500-Modells recht komplexe Objekte. Ein Attribut besteht aus: einem Namen, mit dem das Attribut innerhalb des Objektes eindeutig referenziert werden kann, keinem, genau einem oder einer Liste von Attributsausprägungen. Um die Wiederverwendung von Attributen in verschiedenen Objektklassen zu unterstützen, werden Attribute getrennt von den Objekten definiert, und zwar in Form von Attributtypen (engl. Attribute Type). Der Attributtyp enthält die folgenden Komponenten: Den Namen und/oder die OID, die den Attributtyp eindeutig bestimmt. Optional eine menschenlesbare Beschreibung (Description). Optional Definitionen darüber, welche Regeln für Gleichheit (EQUALITY), Treffer von Teilzeichenketten (SUBSTR) und die lexikalische Anordnung (ORDERING) dieses Attributes gelten sollen. Eine Syntaxbeschreibung, meist in Form einer OID. Dadurch wird z.b festgelegt, ob es sich um eine Zahl, eine Zeichenkette, ein binäres Objekt oder um etwas noch ausgefalleneres handelt. Einem Qualifier, der festlegt, ob ein Attribut einen einfachen Wert (SINGLE-VALUE) oder eine Liste von Werten COLLECTIVE haben kann. Im letzten Fall kann auch zusätzlich noch eine Listenlänge (LENGTH) angegeben werden. 2.3 Verzeichniseinträge Ein konkretes Objekt wird in einem Verzeichnisdienst durch einen Verzeichniseintrag (engl. directory entry oder einfach entry) repräsentiert. Um einen solchen Eintrag von einer bestimmten Objektklasse zu erhalten, weist man einfach den für diese Objektklasse vorgesehenen Attributen bestimmte Werte zu. In diesem Sinne entsprechen die Einträge eines Verzeichnisses den Ausprägungen im objektorientierten Design bzw. in der objektorientierten Programmierung. Je nachdem, ob man mit dem Denken in Objekten vertraut ist oder nicht, sollte man sich einen Eintrag wahlweise als eine Ausprägung von Objektklassen oder als eine 11

12 Menge von Attributen vorstellen: Objektorientierte Definition: Ein Verzeichniseintrag ist eine Ausprägung einer oder mehrerer Objektklassen. Er wird angelegt, indem man allen für diese Objektklassen obligatorischen Attributen und einigen der fakultativen Attribute Werte zuweist. Attributorientierte Definition: Ein Verzeichniseintrag besteht aus einer Menge von Attributen und gehört einer oder mehreren Objektklassen an. Durch die Objektklassen wird festgelegt, welche Attribute obligatorisch und welche Attribute fakultativ sind. 2.4 Vererbung Ein weiteres Konzept, das auch in der Objektorientierten Welt eine zentrale Rolle spielt, ist das Konzept der Vererbung. Eine Objektklasse kann als Unterklasse einer anderen Klasse definiert werden und erbt dann deren Attributdefinitionen. Ein Entwickler, der eine vorhandene Klasse um bestimmte Attribute erweitern will, leitet einfach eine neue Klasse von ihr ab und braucht die schon vorhandenen Definitionen nicht zu wiederholen. Wenn an der Superklasse nachträglich etwas geändert werden muss, dann machen alle davon abgeleiteten Klassen diese Änderung automatisch mit, ohne dass weitere Aktionen des Entwicklers notwendig wären. X.500 Objektklassen erlauben nur eine einfache Vererbung, d.h., eine Objektklasse darf nur von einer anderen Objektklasse abgeleitet sein. Hierin unterscheiden sich die X.500 Klassen von Klassen in einigen OOSprachen, die wie C++ oder Perl die Mehrfachvererbung unterstützen. 2.5 Polymorphismus in Klassen Ein Verzeichniseintrag hat ein Attribut mit Namen objectclass, das festlegt, welchen Klassen der Eintrag angehört. Das objectclass-attribut ist Mehrwertiges, so dass ein Eintrag mehreren Objektklassen angehören und damit auch deren jeweilige Attributsätze erben kann. Dieses Konzept ähnelt der umstrittenen Mehrfachvererbung in OO-Sprachen. Der Unterschied ist aber, dass mehrfache Klassenzugehörigkeit im X.500-Modell bei den Einträgen auftritt, während sie in C++ oder Perl auf der Ebene der Klassen stattfindet, die den Objektklassen des X.500-Modells entsprechen. Diese Polymorphie der Verzeichniseinträge ist nicht die Ausnahme, sondern die Regel, denn jeder Eintrag muss entweder der Klasse top oder der Klasse alias angehören. Ein von top abgeleiteter Eintrag ist ein,,echter Eintrag, ein von alias abgeleiteter Eintrag ist nur ein 12

13 Verweis auf einen anderen Eintrag. Zu den beiden minimal vorhandenen Werten des objectclass-attributes können dann noch beliebig viele weitere geeignete Objektklassen hinzugefügt werden. 2.6 Standardisierung von Attributen und Objektklassen Häufig stellt sich in einem Anwendungsfall das Problem, Daten für,,anonyme Clients bereitzustellen, d.h. Clientanwendungen, die beim Entwurf des Verzeichnisses noch nicht bekannt waren und die ohne explizite Kenntnis des Verzeichnisses entworfen wurden. Ein typisches Beispiel für eine solche Situation sind LDAP-Adressverzeichnisse, die von Mailprogrammen, Web-Browsern oder Groupware benutzt werden. X.500/LDAP stellt zwar einen Mechanismus bereit, mit dem man Informationen zwischen Anwendung und Server austauschen kann, sagt aber nichts darüber aus, welche Struktur die Objekte haben, die ausgetauscht werden sollen, obwohl eine gewisse Kenntnis der vorhandenen Attribute (Namen, Vornamen, Telefonnummer,...) für das Funktionieren einer solchen Anwendung notwendig ist. Um die Interaktion von anonymen Clients und Verzeichnissen zu ermöglichen, werden häufig gebrauchte Objektklassen und Attribute standardisiert. Grundlegende Dokumente zu diesem Thema sind die X.500-Standards X.520 (The Directory: Selected Attribute types) und X.521 (The Directory: Selected Object classes). Sie definieren eine Vielzahl von Standardattributen bzw. Standardklassen, unter anderem die Klassen Person und organizationalperson, die die Grundlage für die meisten Benutzerverwaltungen bilden. Das RFC 2256 A summary of the X.500 User Schema for use with LDAPv3 bietet auf zehn Seiten eine kompakte Zusammenfassung der wichtigsten Attribut- und Objektklassen. Viele weitere Standardklassen werden auch in anderen RFCs definiert. Zum Beispiel definiert RFC 2798 die Klasse inetorgperson, die wahrscheinlich meist benutzte Klasse in der LDAP- Welt überhaupt. Aus den oben beschriebenen Gründen sollte man standardisierte Objekte verwenden, wo immer das möglich ist. Dies ist in einer erstaunlich großen Mehrzahl der Anwendungsfälle der Fall, denn eine sinnvolle Nutzung der Vererbungsmechanismen erlaubt es, gleichzeitig Objekte flexibel zu entwerfen und standardisierte Schnittstellen zu verwenden: Muss man z.b. ein Personenverzeichnis mit einer Personenklasse entwerfen, das zusätzliche Attribute zu einer solchen Klasse hinzufügt (z.b. Ausbildungsstand), dann kann man eine eigene Personenklasse von einer standardisierten Personenklasse ableiten und um eigene Attribute ergänzen. Damit ist dann garantiert, dass alle Attribute, die die Standardsoftware 13

14 erwartet, auch tatsächlich zur Verfügung stehen und dass Standardsoftware mit diesem Verzeichnis korrekt funktionieren kann. Ein gutes Beispiel für diese Strategie liefert RFC Hier wird die noch nicht an das Leben in einer vernetzten Welt angepasste X.500-Klasse organizationalperson um zahlreiche optionale Attribute erweitert. Abbildung 2 - Objektklasse Person 14

15 2.7 Objektklassentypen X.501 definiert drei Typen von Objektklassen: structural auxiliary abstract Eine Objektklasse sollte als structural deklariert werden, wenn sie elementare Attribute eines Objektes definiert. Beim Beispiel der Objektklassen zur Beschreibung von Personen ist dies die Objektklasse Person und damit ihre Subklassen. X.501 fordert, dass ein Eintrag immer von mindestens einer als structural deklarierten Klasse abgeleitet ist. Andererseits legt X.501 auch fest, dass nur eine Klasse eines Eintrags überhaupt strukturelle Klassen in ihrem Ableitungsbaum enthalten darf. Eine als auxiliary definierte Objektklasse fügt neue Eigenschaften zu einem Eintrag hinzu, determiniert aber nicht den Typ des Eintrages, der durch seine strukturelle Klasse bestimmt wird. Es ist gewissermaßen der Regelfall, dass eine Objektklasse vom Typ auxiliary ist. Es ist eigentlich nur dann gerechtfertigt, eine eigene Klasse als structural zu definieren, wenn darauf eine völlig neue Objekthierarchie aufgebaut wird. Einige wenige Objektklassen sind weder als structural, noch als auxiliary, sondern als abstract deklariert. Dieses Konzept entspricht den abstrakten Klassen, wie sie aus Objektorientierten Programmierung bekannt sind: Abstrakte Klassen sollen nicht initialisiert werden, sondern dienen als Vorlage, um von ihnen abgeleiteten konkreten Klassen bestimmte Eigenschaften zu geben. Beispiele für abstrakte Klassen sind die Objektklassen top und alias, die zur Beschreibung der Struktur des Verzeichnisbaumes verwendet werden. 2.8 Verzeichnisbaum Typisches Merkmal eines Verzeichnisdienstes ist die Anordnung von Objekten (bzw. der die Objekte repräsentierenden Einträge) in einer baumartigen Struktur. Dieser Baum wird in LDAP X.500-konform als Directory Information Tree oder kurz DIT bezeichnet. Der Verzeichnisbaum kommt dadurch zustande, dass manche Verzeichniseinträge anderen Einträgen übergeordnet sind. In anderen Verzeichnisdiensten (z.b. Novell Directory oder Microsofts Active Directory) werden solche übergeordneten Objekte auch Container genannt. Die Vorstellung dabei ist, dass ein Container untergeordnete Objekte enthält. Objekte, die keine weiteren Objekte enthalten, werden auch als Blätter bezeichnet. Jedes übergeordnete Objekt definiert durch die 15

16 in ihm enthaltenen Objekte einen Teilbaum des DIT. Die Suche nach Objekten und die Definition von administrativen Verantwortungsbereichen erfolgt auf der Basis solcher Teilbäume. So wird zum Beispiel im Verzeichnis einer Firmenhierarchie ein Eintrag für eine,,abteilung anderen Einträgen wie,,unterabteilung und,,unterunterabteilung übergeordnet werden. 2.9 Aliase Genaugenommen ist der DIT nicht immer ein echter Baum, bei dem es nur Verbindungen von einer untergeordneten Ebene auf eine höhere Ebene gibt, denn LDAP erlaubt auch so genannte Aliase. Ein Aliaseintrag ist ein Eintrag in einem DIT, der nur auf einen anderen Eintrag im DIT verweist, ähnlich wie ein Alias oder Softlink in einem Dateisystem nur auf ein anderes Objekt verweist. Alias Abbildung 3 - Alias Beliebige Aliase sind in LDAP nicht möglich, denn es müssen die so genannten Deadlocks vermieden werden, bei denen ein Alias (möglicherweise über eine Reihe von weiteren Aliasen) wieder im Kreis auf sich selbst verweist. Alias Abbildung 4 - Deadlock 16

17 2.10 Referenzierung durch Namen Will man mit einem Eintrag im Verzeichnisbaum sinnvolle Dinge anstellen, dann braucht man eine Möglichkeit, um den Eintrag eindeutig zu referenzieren. Der Mechanismus zum Referenzieren von Einträgen basiert; ähnlich wie das Referenzieren von Dateien in Dateisystemen auf einem System von absoluten und relativen Namen. Es wird in der ITU-Empfehlung X.501 beschrieben. Da der Name eines Eintrages im X.500-Modell dazu eingesetzt wird, um ihn von anderen Einträgen zu unterscheiden, spricht man im X.500-Kontext von Distinguished Names. Der häufig gebrauchte Begriff Distinguished Name wird meist mit DN abgekürzt Relative Distinguished Name Die Distinguished Names setzen aus kleineren Bausteinen zusammen, den sogenannten Relative Distinguished Names. Der häufig gebrauchte Ausdruck Relative Distinguished Name wird in der Praxis meist mit RDN abgekürzt. Der RDN wird benutzt, um Einträge unterhalb desselben übergeordneten Eintrages im Verzeichnisbaum eindeutig voneinander zu unterscheiden. Einträge an anderen Stellen im DIT können durchaus denselben RDN verwenden. Ein RDN besteht aus einem oder mehreren Attributen und ihren Werten. Diese können im Prinzip beliebig gewählt sein, solange sichergestellt ist, dass sie hinreichen, um einen Eintrag auf seiner Hierarchieebene eindeutig zu bestimmen. Häufig besitzen die Objekte, die durch einen Eintrag modelliert werden sollen, auch in der realen Welt so etwas wie einen Namen. Die meisten Europäer haben eine Kombination aus Vor- und Nachnamen, den man zur Unterscheidung heranziehen kann. Dafür steht das standardisierte Attribut CN zur Verfügung. Das Kürzel CN steht dabei für Common Name. Im Beispiel unserer Firma aus Abbildung 1 bietet es sich an, das CN-Attribut mit dem Wert Michael Monty Widenius als RDN für die Person und das CN-Attribut mit dem Wert MyNotebook für das Device (Computer) zu verwenden. Es gibt allerdings auch andere Möglichkeiten. Für Personen in überschaubaren Hierarchien, in denen es nicht vorkommt, dass zwei Personen denselben Namen haben, ist der CN üblicherweise die adäquate Wahl für den RDN. Anders sieht es aus, wenn Einträge andere Objekte, zum Beispiel Anlagen und Geräte, beschreiben. Für Inventarstücke von geringerem ideellen Wert bietet sich stattdessen die Verwendung einer Seriennummer als RDN an. Diese hat zudem den Vorteil, eindeutig zu sein. Ähnlich liegen die Dinge bei der Firma MySQL AB, die durch ein Objekt der Klasse 17

18 Organization repräsentiert wird. Hier steht überhaupt kein CN-Attribut zur Verfügung, stattdessen sollte hier das Attribut O (Organization) für den RDN verwendet werden Zusammengesetzter RDN Leider reicht es nicht immer aus, ein einziges Attribut als RDN zu verwenden. In einer Minifirma mag es vorkommen, dass in einer Organisationseinheit die Kombination von Vor- und Nachnamen ausreicht, um eine Person eindeutig zu referenzieren. In den Telefonverzeichnissen größerer Städte wird man aber bestimmte Namen (z.b. Klaus Müller) mehr als einmal vorfinden. Dann stellt sich die Frage, wie man in solchen Fällen einen RDN sinnvoll bestimmt. TOP C=US C=AT C=DE C=IT C=DE L=Halle L=Leipzig L=Merseburg CN=Klaus Müller+STREET=Hallesche Str. 2 Abbildung 5 Nehmen wir z.b. an, dass die Daten von Telefonkunden weltweit in einem Verzeichnis verwaltet werden, wie es Abbildung 5 darstellt: Unterhalb von top befinden sich Einträge für die Länder, darunter die Orte, repräsentiert durch ein Objekt der Klasse Location. Ein Location-Objekt besitzt ein einfaches Attribut l (Location), das wir als RDN verwenden können, was z.b. für Merseburg in Sachsen-Anhalt wie folgt notiert wird: { l=merseburg, Sachsen-Anhalt } Unterhalb des Ortes werden die einzelnen Teilnehmer als Objekte der Klasse residentialperson verwaltet. Ist der Ort nicht allzu groß, dann kann man das Glück haben, dass keine zwei Kunden mit dem gleichen Vor- und Nachnamen existieren. In diesem Fall reicht es aus, das einfache Attribut CN als RDN zu verwenden. Der RDN besteht dann einfach aus dem Wertepaar CN=<Name>, also z.b.: 18

19 { CN=Klaus Müller } Wie erwähnt funktioniert dies natürlich nur dann, wenn die Namenskombinationen aller Teilnehmer voneinander verschieden sind. Da dies in der Regel nicht der Fall ist, muss man stattdessen den RDN aus einem Satz von mehreren Attributen bilden. In unserem Beispiel verwenden wir das Attribut STREET als weiteres Unterscheidungskriterium. Solche mehrfachen Attribute werden im RDN durch ein Pluszeichen»+«getrennt, so dass der RDN wie folgt notiert wird: { CN=Klaus Müller+STREET=Hallesche Str. 2 } Überführung RDN zu DN Der Schritt vom RDN, mit dem ein Eintrag auf seiner eigenen Hierarchiestufe eindeutig referenziert werden kann, zum DN, der einen Eintrag im gesamten Verzeichnisbaum eindeutig referenziert, wird in einer relativ offensichtlichen Art und Weise vollzogen: Dazu hängt man, ausgehend von der Wurzel des Verzeichnisbaumes, die RDNs aller übergeordneten Einträge bis hinunter zum Eintrag, für den der DN bestimmt werden soll, in einer kommaseparierten Liste aneinander und fügt dann noch den RDN des Eintrages dazu. Der DN besteht also einfach aus einer kommaseparierten Liste der RDN, die in absteigender Folge aufgelistet werden. Für die Person aus unserem Beispiel ergibt sich der DN: { C=DE, l=merseburg, Sachsen-Anhalt, CN=Klaus Müller+STREET= Hallesche Str. 2 } Der DN für den Ort sieht so aus: { C=DE, l=merseburg, Sachsen-Anhalt } Der DN des Landes ergibt sich zu: { C=DE } Und nicht zu vergessen das Root-Element, das einen ziemlich trivialen DN hat: { } Einige Sonderzeichen die im Wesentlichen das Komma, das im DN die Aufgabe hat, einzelne RDN-Komponenten voneinander zu trennen werden, wenn sie wie in 19

20 unserem Beispiel Merseburg, Sachsen-Anhalt als Bestandteil eines RDN-Wertes vorkommen, durch einen Backslash maskiert. Auch der Backslash muss, wenn er nicht als Escape-Symbol eingesetzt wird, ebenfalls durch einen weiteren Backslash maskiert sein. RFC 2253 beschäftigt sich ausführlich mit der Namenssyntax im LDAP. 3 Die LDAP Sitzung Das LDAP ist ein Sitzungsbasiertes Protokoll. Das heißt, ähnlich wie bei FTP, SMTP und POP muss zuerst eine Sitzung initialisiert werden, bevor Daten ausgetauscht werden können. Der Ablauf einer regulären LDAP-Sitzung umfasst drei Phasen: 1. In einem ersten Schritt meldet sich der LDAP-Client beim LDAP-Server an. Neben der Initialisierung werden auch Informationen darüber ausgetauscht, welche (erweiterten) LDAP-Features der Client unterstützt und gegebenenfalls erfolgt auch eine Authentifizierung und das Aushandeln der Verschlüsselung. Dieser Schritt wird als Binding genannt. 2. Nach dem erfolgreichen Binding tauschen Client und Server sogenannte Nachrichten (Messages) miteinander aus. 3. In einem letzten Schritt beendet der Client die Sitzung. Dieser Schritt wird unbinding begannt. 3.1 Messages und Operationen Die eigentliche LDAP-Sitzung besteht im wechselweisen Austausch von Nachrichten, den so genannten Messages. So initiiert der Client bestimmte Operationen (requests), der Server antwortet mit einer oder mehreren Antworten (responses). Das LDAP spezifiziert die folgenden, in Tabelle 1 aufgelisteten Operationen. Message bind unbind search modify add Bedeutung Initialisierung einer Sitzung, bei der der Client die Protokollversion spezifiziert und die Credentials für die Authentifizierung. Beenden einer Sitzung. Suche im Verzeichnis. Verändern (add, delete, replace)der Attribute eines Eintrags. Hinzufügen eines neuen Eintrags. Client spezifiziert den Namen und 20

21 delete modify RDN compare eine Liste der Attribute. Löscht einen Eintrag. Ändern den RDN eines Eintrags bzw. ganzer Teilbäume. Testet, ob ein Eintrag ein bestimmtes Attribut-/Wertepaar hat. abandon Teilt dem Server mit, das der Client das Ergebnis einer bestimmten Anfrage nicht mehr braucht. Tabelle 1 - DAP Messages Im klassischen Anwendungsfall einer Middleware für X.500-DSPs hat der LDAP-Server keinen lokalen Zugriff auf den vom Client nachgefragten oder manipulierten Datenbestand. Stattdessen sind die Daten auf einer Reihe von verstreuten X.500-Servern verteilt. Der LDAP- Server muss seinerseits die Anfrage oder Manipulation auf diesen Servern veranlassen und alle Rückmeldungen abwarten, bevor eine Antwort an den Client gesendet werden kann. Es muss also prinzipiell damit gerechnet werden, dass die Latenzzeit zwischen der Anfrage und dem Eintreffen aller Antworten recht lang werden kann. Um diese ansonsten nutzlose Latenzzeit auszufüllen, ermöglicht LDAP eine asynchrone Kommunikation zwischen Client und Server. Der Client darf nach dem Abschicken einer ersten Anforderung schon weitere Anforderungen abschicken, noch bevor die Antworten auf die erste Anforderung eingegangen sind. Wenn die Antworten auf eine frühere Anforderung eintreffen, können sie dann wieder der richtigen Anfrage zugeordnet werden, weil die Anfragen eine eindeutige Identifikation MessageID bekommen., die von der Antwort referenziert wird. Ähnlich wie bei anderen nachrichtenorientierten Protokollen nennt man den Teil einer Message, der administrative Informationen wie die MessageID enthält, den Envelope (Briefumschlag). Das Protokoll LDAP war von vornherein auf Erweiterbarkeit ausgelegt. Da in der LDAP- Welt alles ein Objekt ist, werden auch Protokollerweiterungen (bzw. deren Beschreibung) als Objekte behandelt. Objekte, die besondere Fähigkeiten von Client und/oder Server beschreiben, nennt man Controls. Je nachdem, ob Fähigkeiten von Client oder Server beschrieben werden, spricht man auch von clientcontrols oder servercontrols. Um die vom Client bzw. Server unterstützten Fähigkeiten zu beschreiben, gibt es in den Message- Envelopes besondere Felder, die eine Liste der Objekt-Identifier der unterstützten Controls enthalten. Es gib schon eine ganze Reihe von RFCs, die sich mit Controls zur Erweiterung des LDAP- Core-Standards beschäftigen, beispielsweise: RFC 2649 definiert ein Control signedoperationcontrol, das es erlaubt, LDAP- 21

22 Operationen kryptographisch zu signieren, RFC 2696 definiert ein Control pagedresultscontrol, mit dem sich ein Client Auszüge aus einer Menge von Anfragen anzeigen lassen kann, RFC 2891 definiert Controls, die ein serverseitiges Sortierender Anfrageergebnisse beeinflussen. Bei der Kommunikation mit LDAP kommt natürlich die ASN.1 (Abstract Syntax Notation Number 1) zu Einsatz. Die Bedeutung von ASN.1 für das LDAP liegt darin, dass ASN.1 zur Beschreibung der X.500 Datentypen verwendet wird. Für das LDAP sind vor allem die Basic Encoding Rules (BER) wichtig. 4 Die Verteilung des Verzeichnisses Das Wort Partitionierung bezeichnet im X.500 Sprachgebrauch die Verteilung eines Verzeichnisses auf mehrere Server. Dies dient der Vereinfachung der Administration und verbessert die Lastverteilung. Partitionierung ist ein wesentliches Merkmal (und Pluspunkt) von Verzeichnisdiensten. Mit dem Directory Server Protocol DSP stellt X.500 schon auf der Protokollebene Unterstützung für die Partitionierung von Verzeichnissen bereit. Ein X.500- kompatibler Directory System Provider, der von einem Client nach Objekten gefragt wird, die sich auf einem anderen Server befinden, wird diese Daten mittels des DSP-Protokolls von den entsprechenden anderen Servern einsammeln und an den Client schicken. Der Client merkt bei dieser Vorgehensweise nichts von der verteilten Verzeichnisstruktur, das Verzeichnis ist eine Blackbox, auf die er über einen einzigen Server (bzw. DSP) zugreifen kann. Im klassischen Anwendungsfall einer Middleware zwischen TCP/IP-Netzwerk und X.500- Verzeichnis ist also die Partitionierung von Verzeichnissen kein Thema für LDAP, das lediglich die Client-Server-Kommunikation beschreibt und nicht die Kommunikation der Server untereinander. 4.1 Naming Context Ein Eintrag im DIT wird von genau einem Server aus administriert, dieser wird als Administrative Authority, im X.500-Jargon auch als Master-DSA oder einfach Master bezeichnet. Ein Naming Context ist ein maximaler Teilbaum des DIT, dessen Einträge alle denselben Master haben. Maximaler Teilbaum heißt hier, dass der Naming Context bei einem einzigen Eintrag startet und sich über alle im DIT unterhalb von diesem Eintrag gelegenen 22

23 Einträge erstreckt, die noch von demselben Master administriert werden. Der von einem Master administrierte Ausschnitt aus dem DIT kann aus einem oder mehreren Naming Contexts bestehen. Der ganze DIT besteht also aus einer Menge von disjunkten Naming Contexts, wobei es durchaus möglich ist, dass mehrere davon von demselben Master administriert werden. Jeder Naming Context hat einen initialen Eintrag. Den Dinstinguished Name des des initialen Eintrags, der damit auch Bestandteil des DN aller anderen Einträge in diesem Naming Context ist, nennt man auch das Prefix oder Context Prefix dieses Naming Context. 4.2 Referrals und Continuations Mit dem Paradigmenwechsel vom X.500-Frontend hin zum,,standalone-ldap-server ergeben sich aber auch Probleme: Die oben beschriebene elegante Vorgehensweise ist für einen LDAP-Server nicht mehr möglich, wenn andere Backends als X.500-DSPs verwendet werden, es fehlt dann schlicht an einem LDAP-Kommunikationsprotokoll für die Server. Die Verwendung von DSP ist mangels OSI-Stack nicht möglich, und eine TCP/IP-basierte Lösung würde faktisch zu einem neuen Protokoll führen. Um diesen Problemen aus dem Weg zu gehen, wird die Navigation in verteilten Verzeichnissen seit LDAPv3 auf die Clients abgewälzt. Der Server kann dem Client in diesem Fall mit einem Referral antworten. Ein solches Referral ist ein Verweis auf einen Ort an andere Server, der das nachgefragte Objekt bereitstellt. Ähnlich wie bei Referrals funktionieren Continuations. Continuations sind Verweise auf andere Server, die bei Suchoperationen auftreten. Sie geben einen Ort an, an dem die bereits begonnene Suche fortgesetzt werden kann. Für die Partitionierung von Verzeichnissen sind zwei Typen von Referrals wichtig: Subordinate Referrals: Ein solcher Verweis auf einen LDAP-Server, der einen Teilbaum des DIT verwaltet, welcher unterhalb des vom verweisenden Server verwalteten Teilbaums angesiedelt ist. Diese Verweise stellen gewissermaßen den Leim bereit, der partitionierte Verzeichnisse zusammenhält. Superior Referrals: Ein solches Referral wird generiert, wenn der Server keine Information über den zu durchsuchenden Namensraum hat, und verweist in der Regel auf einen Server, der im DIT höher angesiedelt ist. 5 Sicherheit 23

24 Egal welcher Datenbasis ein LDAP-Server als Middleware vorgeschaltet ist, als Verbindung zwischen Datenbasis und Außenwelt bildet er das Einfallstor für entfernte Angriffe gegen die Datensicherheit. Diese kann im Wesentlichen auf zweierlei Arten beeinträchtigt werden: durch unautorisiertes Verändern von Daten, durch unautorisiertes (Mit-)Lesen von Daten, was im besonders schlimmen Fall das unautorisierte Mitlesen von wiederverwendbaren Authentifizierungsdaten sein kann. Autorisierung und Authentifizierung sind die zwei zentralen Begriffe beim Thema Sicherheit: Authentifizierung: Eine Authentifizierung befasst sich mit dem Problem, die Identität eines Objekts zu überprüfen. Dies kann zum Beispiel geschehen, indem Passwörter oder Schlüssel überprüft werden. Autorisierung: Die Autorisierung ist die Gewährung von Rechten. Dabei wird i.d.r. Davon ausgegangen, dass das Objekt, dem Rechte gewährt werden, bereits eine erfolgreiche Authentifizierung hinter sich gebracht hat. Nehmen wir beispielsweise die Zugangskontrolle und Rechteverwaltung bei einem Multiuser- Betriebssystem. Die Überprüfung der Identität des Benutzers beim Login ist eine Authentifizierung. Die Frage, welche Rechte dem Benutzer beim Zugriff auf Dateien und Prozessen zustehen, ist ein Problem der Autorisierung. 5.1 Zugriffskontrolle im LDAP Ein einheitliches Konzept für die Zugriffskontrolle war im LDAP zunächst nicht spezifiziert. Daran erkennt man die Tatsache, dass das LDAP nur ein Zugriffsprotokoll ist. Der Server führt vom Client angeforderte Aktionen aus oder nicht, und er muss den Client informieren, wenn eine Aktion wegen mangelnder Privilegien nicht ausgeführt werden wird. Die Frage, wie ein Server Zugriffsprotokolle und Privilegienverwaltung implementiert, liegt eigentlich schon ausserhalb der Reichweite des LDAP. Obwohl es lange keinen offiziellen Standard gab, der sich mit der serverseitigen Organisation der Zugriffsprotokolle befasst, verfügen natürlich alle wesentlichen LDAP-Implementationen über eine solche. Bei den meisten Implementationen orientiert sich deren Design an der Zugriffskontrolle des UMich-LDAP. 24

25 Unter dem Dach der IETF gibt es in letzter Zeit allerdings Bestrebungen, Zugriffsprotokolle und Autorisierung zu vereinheitlichen: RFC 2820 beschreibt Anforderungen an ein zukünftiges, auf Access Control Lists basierendes Modell der Zugriffskontrolle, draft-ietfldapext-acl-model Access Control Model for LDAP beschreibt ein Privilegiensystem. Beides scheint aber noch weit von einer Umsetzung entfernt zu sein. 5.2 Authentifizierung Auch wenn sich das LDAP nicht mit der Frage befasst, wie die Zugriffskontrolle realisiert wird, geht es dennoch davon aus, dass eine Zugriffskontrolle stattfindet und dass deswegen eine Authentifizierung des Clients beim Server notwendig ist. Seit den früheren LDAP- Versionen gib es dafür ein einfaches Verfahren, beim dem eine BenutzterID und ein Passwort im Klartext übermittelt werden. Dieses veraltete Verfahren wird heute oft als simple authentificaton bezeichnet. Einen Bind, der mit dieser Art von Authentifizierung durchgeführt wird, bezeichnet man als simple bind. Der simple bind ist allerdings beim anonymen bind, mit dem man sich öffentlich zugängliche Daten besorgt, nach wie vor Methode der Wahl. Eine einfache Methode, Authentifizierungsdaten zu verwalten, ist es, diese in einem Verzeichnis abzulegen und den DN des Objekts, das die Authentifizierungsdaten enthält, als Benutzeridentifikation zu verwenden. In einem solchen Szenario redet man davon, dass ein Benutzer sich als ein bestimmtes Objekt an das Verzeichnis bindet. Man findet die Sprechweise zum Beispiel in den Manual Pages der LDAP-Utilities wieder, wo von der BenutzerID als einem,,binddn die Rede ist. Die simple authentification kann in öffentlichen Netzen längst nicht mehr als sicher angesehen werden, da Benutzername und Passwort im Klartext über das Netz geschickt werden und mit geeigneten Sniffern wie ngrep oder ethereal abgefangen werden können. Da die Datenübertragung während der laufenden Sitzung bei LDAPv2 sowieso unverschlüsselt erfolgt, lassen sich mit derartigen Werkzeugen auch die während einer Sitzung übertragende Daten abfangen. 25

26 Abbildung 6 - unverschlüsselte LDAP Sitzung Moderne Gegenmaßnahmen gegen solche Angriffe beinhalten eine möglichst starke Authentifizierung zu Beginn einer Sitzung, sowie eine Verschlüsselung der Datenströme während einer Sitzung. In den LDAPv3-Core-Specs war noch kein Subprotokoll für Authentifizierung und/oder Verschlüsselung definiert. Stattdessen enthalten alle Core-Specs nur einen Hinweis auf das vorläufige Fehlen derartiger Mechanismen. Das erste RFC ließ aufgrund der Dringlichkeit zur Lösung dieses Problems lange auf sich warten. Erst im Mai 2000 wurden zwei RFCs zu Verschlüsselsmechanismen für LDAP veröffentlicht. Es wird aber kein eigener Mechanismus für Authentifizierung und Verschlüsselung entwickelt. Verschlüsselung und Authentifizierung für LDAP werden dedizierten Protokollen, den Protokollen SASL und der Kombination SSL/TLS überlassen. 26

27 RFC 2229 nennt u.a. vier Sicherheitsmechanismen, die in LDAP integriert sein sollen: 1. Client-Authentifizierung mittels SASL, optional zusätzlich durch SSL/TLS- Mechanismen, 2. Server-Authentifizierung durch das TLS-Protokoll, optional zusätzlich durch SASL- Mechanismen, 3. Schutz der Datenintegrität durch Integration von TLS- und/oder SASL-Mechanismen, 4. Schutz der Daten vor unautorisierten Mitlesen (snooping) durch Verschlüsselung mit TLS- und/oder SASL-Mechanismen. Zum Auslagern der Sicherheitsfunktionalität unterstützt LDAP das Simple Authentification and Security Layer (SASL). SASL stellt entweder eigene Funktionen für Verschlüsselung oder Authentifizierung zur Verfügung, oder die SASL-Implementierung wählt bei einer Verbindungsanfrage aus einer Reihe von Authentifizierungsmechanismen einem vom Client unterstützten externen Mechanismus (z.b. TLS) aus und führt damit die Authentifizierung durch. Nach einer erfolgreichen Authentifizierung ist es mit SASL auch möglich, eine Verschlüsselungsmethode auszuwählen, mit der die Sitzung verschlüsselt wird (z.b. IPSec oder SSL/TLS). Die Auswahl des Protokolls erfolgt anhand eines Schlüsselwortes, das der Client sendet. Die IANA (Internet Assigned Numbers Authority) pflegt eine Liste von unterstützten Protokollen und der zugehörigen Keywords. Wichtig im Zusammenhang mit LDAP/OpenLDAP sind insbesondere die folgenden Mechanismen: KERBEROS_V4: Kerberos Version 4. Noch gelegentlich anzutreffende ältere Version des Kerberos-Protokolls, GSSAPI: SASL-Mechanismus, mit dem Authentifizierungsmechanismen gestartet werden, die auf GSSAPI nach RFC 2078 basieren, EXTERNAL: Externe Authentifizierung. Delegiert die Authentifizierung an eine externe Anwendung. Wird bei der Benutzung von TLS oder IPSec gebraucht. 5.3 Der Strong Bind Die SASL-Unterstützung machte es mit LDAPv3 notwendig, den Bind-Request zu ergänzen. Wird eine stärkere Authentifizierung benötigt, dann steht seit LDAPv3 der sogenannte strong bind zur Verfügung. Beim strong bind muss der Client angeben, welche 27

28 Authentifizierungsmethode er sich wünscht, und außerdem müssen die Credentials, d.h. die an die jeweilige Authentifizierungsmethode angepassten Authentifizierungsdaten übergeben werden. 6 Schema Klassen unter LDAP Ein Verzeichnisdienst besteht aus Daten und Metadaten. Unter Metadaten versteht man konkret Informationen über die Struktur des Verzeichnisdienstes, zum Beispiel: Definition der verwendeten Attributtypen, Definition der verwendeten Objektklassen, Filter/Matching-Regeln bei Vergleichsoperationen, Rechte zum Anlegen oder Modifizieren von Datensätzen. Die Information über die verwendeten Attributtypen und Objektklassen wird in einem sogenannten Schema verwaltet. Ein eigenes Verzeichnis zu entwerfen bedeutet im Wesentlichen, ein Schema zu entwerfen bzw. ein vordefiniertes Schema ganz oder teilweise zu übernehmen. X.501 beschäftigt sich mit Schemata für X.500-basierte Verzeichnisdienste. OpenLDAP verwaltet die Schemata für den Server in Textdateien in einem eigenen Verzeichnis. Die OpenLDAP-Distribution bringt standardmäßig eine Reihe von vordefinierten x.schema- Dateien mit. Schemaübersicht: corba.schema: Enthält Datendefinitionen aus RFC 2714 für Common Object Request Broker Architekture (CORBA), einen offenen Standard zum Austausch von Objekten zwischen verschiedenen Anwendungen. core.schema: Eine umfangreiche Sammlung von für den Betrieb des LDAP-Servers wichtigen Schemata cosine.schema: Der RFC 1274 Cosine and Internet X.500 Schema definiert eine gigantische Menge von Attributen und Klassen, die ursprünglich für einen internetweiten Suchdienst gedacht waren. Einiges aus cosine.schema wird z.b. für nis.schema und openldap.schema gebraucht. 28

LDAP verstehen, OpenLDAP einsetzen

LDAP verstehen, OpenLDAP einsetzen Dieter Klünter Jochen Laser LDAP verstehen, OpenLDAP einsetzen Grundlagen, Praxiseinsatz und Single-sign-on-Mechanismen Technische Universität Darmstadt FACHBEREICH INFORMATIK Invanter-Nr, J Standort:

Mehr

2 Das X.500-Datenmodell

2 Das X.500-Datenmodell 15 2 Das X.500-Datenmodell Die Welt der X.500-Protokolle und des davon abgeleitete LDAP besteht aus»objekten«. Ein Leser mit Vorkenntnissen in objektorientiertem Design wird feststellen, dass wesentliche

Mehr

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Autorisierung Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente Dokumentation zum Referat von Matthias Warnicke und Joachim Schröder Modul: Komponenten basierte Softwareentwickelung

Mehr

LDAP. Universität zu Köln IT-Zertifikat Allgemeine Technologien 1 Dozentin: Susanne Kurz M.A. 14.7. Referent: Branko Dragoljic

LDAP. Universität zu Köln IT-Zertifikat Allgemeine Technologien 1 Dozentin: Susanne Kurz M.A. 14.7. Referent: Branko Dragoljic LDAP Universität zu Köln IT-Zertifikat Allgemeine Technologien 1 Dozentin: Susanne Kurz M.A. 14.7. Referent: Branko Dragoljic Allgemeines Lightweight Directory Access Protocol Kommunikation zwischen LDAP-Client

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank

Mehr

Guide DynDNS und Portforwarding

Guide DynDNS und Portforwarding Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch

Mehr

Was ist LDAP. Aufbau einer LDAP-Injection. Sicherheitsmaßnahmen. Agenda. LDAP-Injection. ITSB2006 WS 09/10 Netzwerkkonfiguration und Security

Was ist LDAP. Aufbau einer LDAP-Injection. Sicherheitsmaßnahmen. Agenda. LDAP-Injection. ITSB2006 WS 09/10 Netzwerkkonfiguration und Security Agenda Was ist LDAP Aufbau einer Sicherheitsmaßnahmen Was ist LDAP Abstract RFC4510 The Lightweight Directory Access Protocol (LDAP) is an Internetprotocol for accessing distributed directory services

Mehr

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme Novell Client Anleitung zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 8 Mit der Einführung von Windows 7 hat sich die Novell-Anmeldung sehr stark verändert. Der Novell Client

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr

SANDBOXIE konfigurieren

SANDBOXIE konfigurieren SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:

Mehr

Primzahlen und RSA-Verschlüsselung

Primzahlen und RSA-Verschlüsselung Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele: 2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Configuring Terminal Services o Configure Windows Server 2008 Terminal Services RemoteApp (TS RemoteApp) o Configure Terminal Services Gateway

Mehr

1 Mathematische Grundlagen

1 Mathematische Grundlagen Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.

Mehr

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als

Mehr

POP3 über Outlook einrichten

POP3 über Outlook einrichten POP3 über Outlook einrichten In diesem Tutorial zeigen wir Ihnen, wie Sie im Outlook Express ein POP3 E-Mail Konto einrichten. Wir haben bei der Erstellung des Tutorials die Version 6.0 verwendet. Schritt

Mehr

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software FTP Übersicht Was ist FTP? Übertragungsmodi Sicherheit Öffentliche FTP-Server FTP-Software Was ist FTP? Protokoll zur Dateiübertragung Auf Schicht 7 Verwendet TCP, meist Port 21, 20 1972 spezifiziert Übertragungsmodi

Mehr

Schritt 2: Konto erstellen

Schritt 2: Konto erstellen In diesem Tutorial zeigen wir Ihnen, wie Sie im Outlook Express ein POP3 E-Mail Konto einrichten. Wir haben bei der Erstellung des Tutorials die Version 6.0 verwendet. Schritt 1: Wenn Sie im Outlook Express

Mehr

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert: Firewall für Lexware professional konfigurieren Inhaltsverzeichnis: 1. Allgemein... 1 2. Einstellungen... 1 3. Windows XP SP2 und Windows 2003 Server SP1 Firewall...1 4. Bitdefender 9... 5 5. Norton Personal

Mehr

Kostenstellen verwalten. Tipps & Tricks

Kostenstellen verwalten. Tipps & Tricks Tipps & Tricks INHALT SEITE 1.1 Kostenstellen erstellen 3 13 1.3 Zugriffsberechtigungen überprüfen 30 2 1.1 Kostenstellen erstellen Mein Profil 3 1.1 Kostenstellen erstellen Kostenstelle(n) verwalten 4

Mehr

IAWWeb PDFManager. - Kurzanleitung -

IAWWeb PDFManager. - Kurzanleitung - IAWWeb PDFManager - Kurzanleitung - 1. Einleitung Dieses Dokument beschreibt kurz die grundlegenden Funktionen des PDFManager. Der PDF Manager dient zur Pflege des Dokumentenbestandes. Er kann über die

Mehr

Verwendung des IDS Backup Systems unter Windows 2000

Verwendung des IDS Backup Systems unter Windows 2000 Verwendung des IDS Backup Systems unter Windows 2000 1. Download der Software Netbackup2000 Unter der Adresse http://www.ids-mannheim.de/zdv/lokal/dienste/backup finden Sie die Software Netbackup2000.

Mehr

Tutorial - www.root13.de

Tutorial - www.root13.de Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk

Mehr

Einrichtung eines e-mail-konto mit Outlook Express

Einrichtung eines e-mail-konto mit Outlook Express Einrichtung eines e-mail-konto mit Outlook Express In diesem Tutorial zeigen wir Ihnen, wie Sie im Outlook Express ein POP3 E-Mail Konto einrichten. Wir haben bei der Erstellung des Tutorials die Version

Mehr

4 Aufzählungen und Listen erstellen

4 Aufzählungen und Listen erstellen 4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Grundlagen DNS 1/5. DNS (Domain Name System)

Grundlagen DNS 1/5. DNS (Domain Name System) Grundlagen DNS 1/5 DNS (Domain Name System) Weltweit gibt es 13 zentrale DNS-Server (Root-Nameserver), auf denen die verschiedenen Domains abgelegt sind. Der Domönennamensraum bzw. das Domain Name Space

Mehr

Task: Nmap Skripte ausführen

Task: Nmap Skripte ausführen Task: Nmap Skripte ausführen Inhalt Einfache Netzwerkscans mit NSE Ausführen des Scans Anpassung der Parameter Einleitung Copyright 2009-2015 Greenbone Networks GmbH Herkunft und aktuellste Version dieses

Mehr

Anleitung zur Erstellung einer Batchdatei. - für das automatisierte Verbinden mit Netzlaufwerken beim Systemstart -

Anleitung zur Erstellung einer Batchdatei. - für das automatisierte Verbinden mit Netzlaufwerken beim Systemstart - Anleitung zur Erstellung einer Batchdatei - für das automatisierte Verbinden mit Netzlaufwerken beim Systemstart - Mögliche Anwendungen für Batchdateien: - Mit jedem Systemstart vordefinierte Netzlaufwerke

Mehr

ANYWHERE Zugriff von externen Arbeitsplätzen

ANYWHERE Zugriff von externen Arbeitsplätzen ANYWHERE Zugriff von externen Arbeitsplätzen Inhaltsverzeichnis 1 Leistungsbeschreibung... 3 2 Integration Agenda ANYWHERE... 4 3 Highlights... 5 3.1 Sofort einsatzbereit ohne Installationsaufwand... 5

Mehr

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen

Mehr

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen

BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen BüroWARE Exchange Synchronisation Grundlagen und Voraussetzungen Stand: 13.12.2010 Die BüroWARE SoftENGINE ist ab Version 5.42.000-060 in der Lage mit einem Microsoft Exchange Server ab Version 2007 SP1

Mehr

Implementierung einer LDAP basierenden Patientenverwaltung

Implementierung einer LDAP basierenden Patientenverwaltung FH Heilbronn / Uni Heidelberg Studiengang Medizinische Informatik Praktikum Datenbank- und Informationssysteme im Gesundheitswesen Implementierung einer LDAP basierenden Patientenverwaltung Handout zur

Mehr

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank In den ersten beiden Abschnitten (rbanken1.pdf und rbanken2.pdf) haben wir uns mit am Ende mysql beschäftigt und kennengelernt, wie man

Mehr

Windows Server 2008 für die RADIUS-Authentisierung einrichten

Windows Server 2008 für die RADIUS-Authentisierung einrichten Windows Server 2008 für die RADIUS-Authentisierung einrichten Version 0.2 Die aktuellste Version dieser Installationsanleitung ist verfügbar unter: http://www.revosec.ch/files/windows-radius.pdf Einleitung

Mehr

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer

Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Fachdidaktik der Informatik 18.12.08 Jörg Depner, Kathrin Gaißer Klassendiagramme Ein Klassendiagramm dient in der objektorientierten Softwareentwicklung zur Darstellung von Klassen und den Beziehungen,

Mehr

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang sysplus.ch outlook - mail-grundlagen Seite 1/8 Outlook Mail-Grundlagen Posteingang Es gibt verschiedene Möglichkeiten, um zum Posteingang zu gelangen. Man kann links im Outlook-Fenster auf die Schaltfläche

Mehr

FTP-Leitfaden RZ. Benutzerleitfaden

FTP-Leitfaden RZ. Benutzerleitfaden FTP-Leitfaden RZ Benutzerleitfaden Version 1.4 Stand 08.03.2012 Inhaltsverzeichnis 1 Einleitung... 3 1.1 Zeitaufwand... 3 2 Beschaffung der Software... 3 3 Installation... 3 4 Auswahl des Verbindungstyps...

Mehr

Datenbanken Kapitel 2

Datenbanken Kapitel 2 Datenbanken Kapitel 2 1 Eine existierende Datenbank öffnen Eine Datenbank, die mit Microsoft Access erschaffen wurde, kann mit dem gleichen Programm auch wieder geladen werden: Die einfachste Methode ist,

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

Mehr

Adami CRM - Outlook Replikation User Dokumentation

Adami CRM - Outlook Replikation User Dokumentation Adami CRM - Outlook Replikation User Dokumentation Die neue Eigenschaft der Adami CRM Applikation macht den Information Austausch mit Microsoft Outlook auf vier Ebenen möglich: Kontakte, Aufgaben, Termine

Mehr

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

Speicher in der Cloud

Speicher in der Cloud Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

Benutzeranleitung Superadmin Tool

Benutzeranleitung Superadmin Tool Benutzeranleitung Inhalt 1 Einleitung & Voraussetzungen... 2 2 Aufruf des... 3 3 Konto für neuen Benutzer erstellen... 3 4 Services einem Konto hinzufügen... 5 5 Benutzer über neues Konto informieren...

Mehr

Benutzerkonto unter Windows 2000

Benutzerkonto unter Windows 2000 Jeder Benutzer, der an einem Windows 2000 PC arbeiten möchte, braucht dazu ein Benutzerkonto. Je nach Organisation des Netzwerkes, existiert dieses Benutzerkonto auf der lokalen Workstation oder im Active

Mehr

Handbuch. timecard Connector 1.0.0. Version: 1.0.0. REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen

Handbuch. timecard Connector 1.0.0. Version: 1.0.0. REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen Handbuch timecard Connector 1.0.0 Version: 1.0.0 REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen Furtwangen, den 18.11.2011 Inhaltsverzeichnis Seite 1 Einführung... 3 2 Systemvoraussetzungen...

Mehr

2.5.2 Primärschlüssel

2.5.2 Primärschlüssel Relationale Datenbanken 0110 01101110 01110 0110 0110 0110 01101 011 01110 0110 010 011011011 0110 01111010 01101 011011 0110 01 01110 011011101 01101 0110 010 010 0110 011011101 0101 0110 010 010 01 01101110

Mehr

Benutzerverwaltung Business- & Company-Paket

Benutzerverwaltung Business- & Company-Paket Benutzerverwaltung Business- & Company-Paket Gemeinsames Arbeiten mit der easyfeedback Umfragesoftware. Inhaltsübersicht Freischaltung des Business- oder Company-Paketes... 3 Benutzerverwaltung Business-Paket...

Mehr

"E-Mail-Adresse": Geben Sie hier bitte die vorher eingerichtete E-Mail Adresse ein.

E-Mail-Adresse: Geben Sie hier bitte die vorher eingerichtete E-Mail Adresse ein. Microsoft Outlook Um ein E-Mail-Postfach im E-Mail-Programm Outlook einzurichten, gehen Sie bitte wie folgt vor: Klicken Sie in Outlook in der Menüleiste auf "Extras", anschließend auf "E-Mail-Konten".

Mehr

Schritt 1: Auswahl Schritt 3 Extras > Konten Schritt 2: Konto erstellen Konto hinzufügen klicken

Schritt 1: Auswahl Schritt 3 Extras > Konten Schritt 2: Konto erstellen Konto hinzufügen klicken In diesem Tutorial zeigen wir Ihnen, wie Sie im Mozilla Thunderbird E-Mailclient ein POP3-Konto einrichten. Wir haben bei der Erstellung des Tutorials die Version 2.0.0.6 verwendet. Schritt 1: Auswahl

Mehr

Nutzung von GiS BasePac 8 im Netzwerk

Nutzung von GiS BasePac 8 im Netzwerk Allgemeines Grundsätzlich kann das GiS BasePac Programm in allen Netzwerken eingesetzt werden, die Verbindungen als Laufwerk zu lassen (alle WINDOWS Versionen). Die GiS Software unterstützt nur den Zugriff

Mehr

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld Sharing. Auf dem Bildschirm sollte folgendes Fenster erscheinen: Einleitung Unter MacOS X hat Apple die Freigabe standardmäßig auf den "Public" Ordner eines Benutzers beschränkt. Mit SharePoints wird diese Beschränkung beseitigt. SharePoints erlaubt auch die Kontrolle

Mehr

OUTLOOK (EXPRESS) KONFIGURATION POP3

OUTLOOK (EXPRESS) KONFIGURATION POP3 Seite 1 von 12 OUTLOOK (EXPRESS) KONFIGURATION POP3 Eine Anleitung zum Konfigurieren von Outlook (Express) zum Verwalten des Emailkontos am Mozarteum zur Verfügung gestellt durch: ZID Dezentrale Systeme

Mehr

E-Mail Adressen der BA Leipzig

E-Mail Adressen der BA Leipzig E-Mail Adressen der BA Jeder Student der BA bekommt mit Beginn des Studiums eine E-Mail Adresse zugeteilt. Diese wird zur internen Kommunikation im Kurs, von der Akademie und deren Dozenten zur Verteilung

Mehr

E-Mail-Verschlüsselung mit Geschäftspartnern

E-Mail-Verschlüsselung mit Geschäftspartnern E-Mail-Verschlüsselung mit (Anleitung für Siemens Mitarbeiter) Datum: 13.07.2011 Dokumentenart: Anwenderbeschreibung Version: 3.0 : Redaktionsteam PKI cio.siemens.com Inhaltsverzeichnis 1. Zweck des Dokumentes:...3

Mehr

Installation der SAS Foundation Software auf Windows

Installation der SAS Foundation Software auf Windows Installation der SAS Foundation Software auf Windows Der installierende Benutzer unter Windows muss Mitglied der lokalen Gruppe Administratoren / Administrators sein und damit das Recht besitzen, Software

Mehr

Teil I. Einführung in LDAP

Teil I. Einführung in LDAP Teil I Einführung in LDAP 3 In diesem ersten Teil des Buches werden wir uns mit den Grundlagen von LDAP befassen. In den folgenden, stärker anwendungsorientierten Teilen werden wir immer wieder auf die

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

Der große VideoClip- Wettbewerb von Media Markt.

Der große VideoClip- Wettbewerb von Media Markt. Der große VideoClip- Wettbewerb von Media Markt. Zeig was du drauf hast! Am 1. Juli startet eine Aktion, wie sie die Schweiz noch nicht gesehen hat. Unter dem Motto Zeig was Du drauf hast! suchen wir den

Mehr

DIRECTINFO 5.7 SICHERHEITSKONZEPTE FÜR BENUTZER, INFORMATIONEN UND FUNKTIONEN

DIRECTINFO 5.7 SICHERHEITSKONZEPTE FÜR BENUTZER, INFORMATIONEN UND FUNKTIONEN DIRECTINFO 5.7 SICHERHEITSKONZEPTE FÜR BENUTZER, INFORMATIONEN UND FUNKTIONEN - Whitepaper 1 Autor: Peter Kopecki Version: 1.2 Stand: Mai 2006 DIRECTINFO 5.7... 1 SICHERHEITSKONZEPTE FÜR BENUTZER, INFORMATIONEN

Mehr

1 Die Active Directory

1 Die Active Directory 1 Die Active Directory Infrastruktur Prüfungsanforderungen von Microsoft: Configuring the Active Directory Infrastructure o Configure a forest or a domain o Configure trusts o Configure sites o Configure

Mehr

Step by Step VPN unter Windows Server 2003. von Christian Bartl

Step by Step VPN unter Windows Server 2003. von Christian Bartl Step by Step VPN unter Windows Server 2003 von VPN unter Windows Server 2003 Einrichten des Servers 1. Um die VPN-Funktion des Windows 2003 Servers zu nutzen muss der Routing- und RAS-Serverdienst installiert

Mehr

Kurzanleitung zu. von Daniel Jettka 18.11.2008

Kurzanleitung zu. von Daniel Jettka 18.11.2008 Kurzanleitung zu Tigris.org Open Source Software Engineering Tools von Daniel Jettka 18.11.2008 Inhaltsverzeichnis 1.Einführung...1 2.Das Projektarchivs...3 2.1.Anlegen des Projektarchivs...3 2.2.Organisation

Mehr

Kurzanleitung OOVS. Reseller Interface. Allgemein

Kurzanleitung OOVS. Reseller Interface. Allgemein Kurzanleitung OOVS Reseller Interface Allgemein Durch die Einführung des neuen Interfaces hat sich für Reseller von Syswebcom etwas geändert. Die Struktur der Kundenverwaltung ist einprägsamer, wenn man

Mehr

MSXFORUM - Exchange Server 2003 > Konfiguration NNTP unter Exchange 2003

MSXFORUM - Exchange Server 2003 > Konfiguration NNTP unter Exchange 2003 Page 1 of 11 Konfiguration NNTP unter Exchange 2003 Kategorie : Exchange Server 2003 Veröffentlicht von webmaster am 14.03.2005 Das Network News Transfer Protocol (NNTP) wird durch die Request for Comments

Mehr

Gefahren aus dem Internet 1 Grundwissen April 2010

Gefahren aus dem Internet 1 Grundwissen April 2010 1 Grundwissen Voraussetzungen Sie haben das Internet bereits zuhause oder an der Schule genutzt. Sie wissen, was ein Provider ist. Sie wissen, was eine URL ist. Lernziele Sie wissen, was es braucht, damit

Mehr

LDAP Informationsmodell

LDAP Informationsmodell LDAP Informationsmodell von Präsentation im Rahmen der Vorlesung im WS 05/06 bei Prof. Dr. Martin Leischner. Gliederung LDAP Modelle LDAP Informationsmodell Anwendungsdaten Schemadaten Beispiel FH Fachbereichs

Mehr

Lizenzierung von SharePoint Server 2013

Lizenzierung von SharePoint Server 2013 Lizenzierung von SharePoint Server 2013 Das Lizenzmodell von SharePoint Server 2013 besteht aus zwei Komponenten: Serverlizenzen zur Lizenzierung der Serversoftware und CALs zur Lizenzierung der Zugriffe

Mehr

Sie erhalten einen kurzen Überblick über die verschiedenen Domänenkonzepte.

Sie erhalten einen kurzen Überblick über die verschiedenen Domänenkonzepte. 4 Domänenkonzepte Ziele des Kapitels: Sie verstehen den Begriff Domäne. Sie erhalten einen kurzen Überblick über die verschiedenen Domänenkonzepte. Sie verstehen die Besonderheiten der Vertrauensstellungen

Mehr

SharePoint Demonstration

SharePoint Demonstration SharePoint Demonstration Was zeigt die Demonstration? Diese Demonstration soll den modernen Zugriff auf Daten und Informationen veranschaulichen und zeigen welche Vorteile sich dadurch in der Zusammenarbeit

Mehr

Registrierung am Elterninformationssysytem: ClaXss Infoline

Registrierung am Elterninformationssysytem: ClaXss Infoline elektronisches ElternInformationsSystem (EIS) Klicken Sie auf das Logo oder geben Sie in Ihrem Browser folgende Adresse ein: https://kommunalersprien.schule-eltern.info/infoline/claxss Diese Anleitung

Mehr

Windows Server 2012 RC2 konfigurieren

Windows Server 2012 RC2 konfigurieren Windows Server 2012 RC2 konfigurieren Kurzanleitung um einen Windows Server 2012 als Primären Domänencontroller einzurichten. Vorbereitung und Voraussetzungen In NT 4 Zeiten, konnte man bei der Installation

Mehr

SICHERN DER FAVORITEN

SICHERN DER FAVORITEN Seite 1 von 7 SICHERN DER FAVORITEN Eine Anleitung zum Sichern der eigenen Favoriten zur Verfügung gestellt durch: ZID Dezentrale Systeme März 2010 Seite 2 von 7 Für die Datensicherheit ist bekanntlich

Mehr

Warenwirtschaft Handbuch - Administration. 2013 www.addware.de

Warenwirtschaft Handbuch - Administration. 2013 www.addware.de Warenwirtschaft Handbuch - Administration 2 Warenwirtschaft Inhaltsverzeichnis Vorwort 0 Teil I Administration 3 1 Datei... 4 2 Datenbank... 6 3 Warenwirtschaft... 12 Erste Schritte... 13 Benutzerverwaltung...

Mehr

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten Was sind Berechtigungen? Unter Berechtigungen werden ganz allgemein die Zugriffsrechte auf Dateien und Verzeichnisse (Ordner) verstanden.

Mehr

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG it4sport GmbH HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG Stand 10.07.2014 Version 2.0 1. INHALTSVERZEICHNIS 2. Abbildungsverzeichnis... 3 3. Dokumentenumfang... 4 4. Dokumente anzeigen... 5 4.1 Dokumente

Mehr

dpa-infocom - Datenlieferung

dpa-infocom - Datenlieferung dpa-infocom - Datenlieferung Copyright 2006 von dpa-infocom GmbH Status des Dokuments: FINAL Inhaltsverzeichnis Inhaltsverzeichnis...1 1. Verzeichnisstrukturen...2 2. Nachrichtenmanagement...2 3. Datenübertragung...3

Mehr

GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY

GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY GEORG.NET Anbindung an Ihr ACTIVE-DIRECTORY Vorteile der Verwendung eines ACTIVE-DIRECTORY Automatische GEORG Anmeldung über bereits erfolgte Anmeldung am Betriebssystem o Sie können sich jederzeit als

Mehr

Reporting Services und SharePoint 2010 Teil 1

Reporting Services und SharePoint 2010 Teil 1 Reporting Services und SharePoint 2010 Teil 1 Abstract Bei der Verwendung der Reporting Services in Zusammenhang mit SharePoint 2010 stellt sich immer wieder die Frage bei der Installation: Wo und Wie?

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1): Supportanfrage ESN Bitte füllen Sie zu jeder Supportanfrage diese Vorlage aus. Sie helfen uns damit, Ihre Anfrage kompetent und schnell beantworten zu können. Verwenden Sie für jedes einzelne Thema jeweils

Mehr

Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird

Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird Mailkonfiguration am Beispiel von Thunderbird Ein Hinweis vorab: Sie können beliebig viele verschiedene Mailkonten für Ihre Domain anlegen oder löschen. Das einzige Konto, das nicht gelöscht werden kann,

Mehr

HowTo: Einrichtung & Management von APs mittels des DWC-1000

HowTo: Einrichtung & Management von APs mittels des DWC-1000 HowTo: Einrichtung & Management von APs mittels des DWC-1000 [Voraussetzungen] 1. DWC-1000 mit Firmware Version: 4.1.0.2 und höher 2. Kompatibler AP mit aktueller Firmware 4.1.0.8 und höher (DWL-8600AP,

Mehr

Beispiel Zugangsdaten E-Mail-Konto

Beispiel Zugangsdaten E-Mail-Konto Beispiel Zugangsdaten E-Mail-Konto Sehr geehrter MSU-Kunde, vielen Dank für Ihr Vertrauen in die MSU als verlässlichen, sicheren E-Mail Provider. Zur Einrichtung Ihrer E-Mail-Adresse benötigen Sie noch

Mehr

estos UCServer Multiline TAPI Driver 5.1.30.33611

estos UCServer Multiline TAPI Driver 5.1.30.33611 estos UCServer Multiline TAPI Driver 5.1.30.33611 1 estos UCServer Multiline TAPI Driver... 4 1.1 Verbindung zum Server... 4 1.2 Anmeldung... 4 1.3 Leitungskonfiguration... 5 1.4 Abschluss... 5 1.5 Verbindung...

Mehr

Einrichtung eines E-Mail-Kontos bei MS Office Outlook 2010 (Windows) Stand: 03/2011

Einrichtung eines E-Mail-Kontos bei MS Office Outlook 2010 (Windows) Stand: 03/2011 Einrichtung eines E-Mail-Kontos bei MS Office Outlook 2010 (Windows) Stand: 03/2011 Bitte lesen Sie diese Anleitung sorgfältig durch. Direkter Kapitelsprung [POP3] [IMAP] [SSL/TSL] [Zertifikat] 1. Klicken

Mehr

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst. 40-Tage-Wunder- Kurs Umarme, was Du nicht ändern kannst. Das sagt Wikipedia: Als Wunder (griechisch thauma) gilt umgangssprachlich ein Ereignis, dessen Zustandekommen man sich nicht erklären kann, so dass

Mehr

Sichere E-Mails. Kundeninformation zur Verschlüsselung von E-Mails in der L-Bank

Sichere E-Mails. Kundeninformation zur Verschlüsselung von E-Mails in der L-Bank Sichere E-Mails Kundeninformation zur Verschlüsselung von E-Mails in der L-Bank Version: 2.1 Stand: 18.07.2014 Inhaltsverzeichnis II Inhaltsverzeichnis 1 Einleitung... 1 1.1 Überblick... 1 1.2 Allgemeine

Mehr

EasyWk DAS Schwimmwettkampfprogramm

EasyWk DAS Schwimmwettkampfprogramm EasyWk DAS Schwimmwettkampfprogramm Arbeiten mit OMEGA ARES 21 EasyWk - DAS Schwimmwettkampfprogramm 1 Einleitung Diese Präsentation dient zur Darstellung der Zusammenarbeit zwischen EasyWk und der Zeitmessanlage

Mehr

Lieber SPAMRobin -Kunde!

Lieber SPAMRobin -Kunde! Lieber SPAMRobin -Kunde! Wir freuen uns, dass Sie sich für SPAMRobin entschieden haben. Mit diesem Leitfaden möchten wir Ihnen die Kontoeinrichtung erleichtern und die Funktionen näher bringen. Bitte führen

Mehr

So richten Sie Ihr Postfach im Mail-Programm Apple Mail ein:

So richten Sie Ihr Postfach im Mail-Programm Apple Mail ein: Seit der Version 3 von Apple Mail wird ein neuer E-Mail-Account automatisch über eine SSL-verschlüsselte Verbindung angelegt. Daher beschreibt die folgende Anleitung, wie Sie Ihr Postfach mit Apple Mail

Mehr

Alle alltäglichen Aufgaben können auch über das Frontend durchgeführt werden, das in den anderen Anleitungen erläutert wird.

Alle alltäglichen Aufgaben können auch über das Frontend durchgeführt werden, das in den anderen Anleitungen erläutert wird. Der Admin-Bereich im Backend Achtung: Diese Anleitung gibt nur einen groben Überblick über die häufigsten Aufgaben im Backend-Bereich. Sollten Sie sich nicht sicher sein, was genau Sie gerade tun, dann

Mehr

Ihr Benutzerhandbuch für das IntelliWebs - Redaktionssystem

Ihr Benutzerhandbuch für das IntelliWebs - Redaktionssystem Ihr Benutzerhandbuch für das IntelliWebs - Redaktionssystem Der IntelliWebs-Mailadministrator ermöglicht Ihnen Mailadressen ihrer Domain selbst zu verwalten. Haben Sie noch Fragen zum IntelliWebs Redaktionssystem?

Mehr

Professionelle Seminare im Bereich MS-Office

Professionelle Seminare im Bereich MS-Office Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion

Mehr

Einrichtung E-Mail Konto Microsoft Outlook 2010

Einrichtung E-Mail Konto Microsoft Outlook 2010 Installationsanleitungen für verschiedene Net4You Services Einrichtung E-Mail Konto Microsoft Outlook 2010 Aufgrund unserer langjährigen Erfahrung, wissen wir um viele Kundenprobleme in der Bedienung von

Mehr

1 Konto neu in Mailprogramm einrichten

1 Konto neu in Mailprogramm einrichten 1 1 Konto neu in Mailprogramm einrichten 1.1 Mozilla Thunderbird Extras Konten Konto hinzufügen E-Mail-Konto 1. Identität eingeben: Name und mitgeteilte Mail-Adresse 2. Typ des Posteingangs-Server: POP3

Mehr

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten

Access [basics] Rechnen in Berichten. Beispieldatenbank. Datensatzweise berechnen. Berechnung im Textfeld. Reporting in Berichten Rechnen in Berichten Berichte bieten die gleichen Möglichkeit zur Berechnung von Werten wie Formulare und noch einige mehr. Im Gegensatz zu Formularen bieten Berichte die Möglichkeit, eine laufende Summe zu bilden oder Berechnungen

Mehr