LDAP Connector
Verwendung
Mit dem LDAP Connector können Sie Daten auf einem Lightweight Directory Access Protocol (LDAP)-Server einfügen, ändern, löschen und suchen.
Konnektortypen
Ein LDAP Connector kann als Medium- oder Outputkonnektor konfiguriert werden:
-
Medium Connector
Als Mediumkonnektor erhält der LDAP Connector vom Vorgänger eine Abfrage als DSML-Nachricht, sendet diese an den LDAP-Server, erhält vom LDAP-Server ein Ergebnis und gibt dieses Ergebnis an das nachfolgende Modul weiter.
-
Output Connector
Als Outputkonnektor erhält der LDAP Connector vom Vorgänger-Modul eine DSML-Nachricht und sendet diese an den LDAP-Server.
Funktionsprinzip
Der LDAP Connector stellt die Verbindung zu einem LDAP-Server her, liest einen DSMLv2 Request und übersetzt die darin enthaltenen Anweisungen in LDAP-Aufrufe.
Die Directory Services Markup Language (DSML) ist ein OASIS-Standard, der den Zugriff auf Verzeichnisse mittels XML-Schema und SOAP als Transportmechanismus spezifiziert und das komplette LDAP-Datenmodell abbildet.
Um die Verbindung zu einem LDAP-Server aufzubauen und Abfragen auszuführen, müssen Sie
-
einen LDAP Connector mit Verbindungsinformationen zum LDAP-Server erstellen
-
mithilfe eines XSLT Converters einen DSMLv2-Request in folgender Syntax erstellen:
<batchRequest xmlns="urn:oasis:names:tc:DSML:2:0:core"> <!-- Jede einzelne Anweisung muss ein DN-Attribut enthalten! --> <modifyRequest dn="CN=Joe Smith, OU=Dev, DC=inubit, DC=com">...</modifyRequest> <addRequest>...</addRequest> <delRequest>...</delRequest> </batchRequest>
-
Die Response ist abhängig von der Konfiguration des Connectors:
-
Bei einem Output Connector werden Fehler- bzw. Erfolgsmeldungen zurückgegeben.
-
Bei einem Medium Connector werden die Ergebnisse in Form einer DSMLv2 Response zurückgesendet:
<batchResponse xmlns="urn:oasis:names:tc:DSML:2:0:core"> <modifyResponse>...</modifyResponse> <addResponse>...</addResponse> <delResponse>...</delResponse> </batchResponse>
-
Anzahl der zu holenden Elemente konfigurieren
Verwendung
Zum Konfigurieren, wie viele Elemente auf einmal vom LDAP-Server geholt werden sollen
Funktionsprinzip
Mit dem Attribut pageSize
können Sie im XSLT-Stylesheet konfigurieren, wie viele Elemente der LDAP Connector auf einmal vom LDAP-Server holen soll.
Gibt es auf dem LDAP-Server mehr Elemente als mit dem Attribut pageSize
konfiguriert sind, existiert die Modulvariable LDAPConnector.config.nextPage
.
Mit dieser Variablen konfigurieren Sie eine Bedingung an einem Demultiplexer, um die nächsten Einträge vom LDAP-Server zu holen.
Voraussetzungen
Sie haben einen Workflow mit einem LDAP Connector konfiguriert, zum Beispiel:
So gehen Sie vor
-
Öffnen Sie den Workflow zum Bearbeiten.
-
Öffnen Sie den XSLT Connector zum Bearbeiten.
-
Öffnen Sie die Seite Module Editor.
-
Im Abschnitt
searchRequest
des XSLT-Stylesheets, fügen Sie das AttributpageSize
mit dem Wert hinzu, der festlegt, wie viele Elemente auf einmal vom LDAP Server geholt werden sollen.Die im XSLT Connector zu verwendende Vorlage ist in der INUBIT-Repository-Datei
LDAP_Queries.xml
im folgenden Ordner gespeichert:/Global/System/Mapping Templates/LDAP Connector
Das XSLT-Stylesheet sollte wie folgt aussehen:
-
Klicken Sie auf Fertig stellen, um die Änderungen zu speichern.
-
Konfigurieren Sie am Demultiplexer-Modul die Bedingung für der Verbindung zurück zum Joiner-Modul wie folgt:
-
Klicken Sie im Abschnitt Bedingungen auf Bedingung hinzufügen.
-
Klicken Sie links auf das Icon V.
-
Wählen Sie die Modulvariable
LDAPConnector.config.nextPage
. -
Wählen Sie
exists
aus der Liste der Operatoren. Die Bedingung muss wie folgt aussehen:
-
-
Klicken Sie auf OK, um die Änderungen zu speichern.
-
Publizieren Sie den Workflow und die darin enthaltenen Module.
DSMLv2-Anweisungen in Requests im LDAP Connector
Für alle Zugriffe auf konkrete Einträge eines LDAP-Servers benötigen Sie die eindeutigen Namen (distinguished names) der entsprechenden Objekte! |
DN-Attribute in Anweisungen
Jede Anweisung in einem Request muss ein DN-Attribut (distinguished names) enthalten. Das DN-Attribut wird benötigt, um einen Eintrag in einem LDAP-Verzeichnis eindeutig zu identifizieren und beschreibt, wo genau in der Verzeichnishierarchie sich der Eintrag befindet.
Weitere Informationen:
-
DSML-Dokumentation und DSML-Schema, siehe https://www.oasis-open.org/committees/dsml/docs/DSMLv2.doc
-
vollständige Definition der Distinguished Names, siehe https://www.ietf.org/rfc/rfc2253.txt
Modify im LDAP Connector
In DSMLv2 werden alle Änderungen an Attributen durch Anhängen eines operation
Attributs an ein attr
Element spezifiziert.
Eine operation
kann add
, delete
oder replace
sein.
Beispiel
Die folgende Anweisung aktualisiert die Telefonnummer des Mitarbeiters Bob Rush:
<modifyRequest dn="CN=Bob Rush,OU=Dev,DC=Example,DC=COM">
<modification
name="telephoneNumber"
operation="replace">
<value>536 354 2343</value>
<value>234 212 4534</value>
</modification>
</modifyRequest>
Search im LDAP Connector
Die Anweisung searchRequest
sucht nach Daten auf dem LDAP-Server.
Beispiel Suchen und Ausgeben
Es werden alle Personen mit dem Namen John gesucht, die sich im Pfad ou=Marketing, dc=inubit, dc=com
befinden.
Dabei werden alle gefundenen Objekte samt ihrer Attribute ausgegeben.
<searchRequest
dn="ou=Marketing,dc=inubit,dc=com"
scope="singleLevel"
derefAliases="neverDerefAliases"
sizeLimit="1000">
<filter>
<equalityMatch name="cn">
<value>john</value>
</equalityMatch>
</filter>
</searchRequest>
Beispiel Suchen und Ausgabe eingrenzen
Im folgenden Beispiel wird nach den gleichen Kriterien wie oben gesucht.
Allerdings sollen die ausgegebenen Attribute auf das Attribut objectSid
beschränkt werden.
<searchRequest
dn="ou=Marketing,dc=inubit,dc=com"
scope="singleLevel"
derefAliases="neverDerefAliases"
sizeLimit="1000">
<filter>
<equalityMatch name="cn">
<value>john</value>
</equalityMatch>
</filter>
<attributes>
<attribute name="objectSid" type="binary"/>
</attributes>
</searchRequest>
Wenn binäre Attribute über den LDAP-Connector ausgelesen werden sollen, müssen diese Attribute bereits in der Eingangsnachricht gekennzeichnet bzw. maskiert werden.
Im Search-Request müssen Sie dazu das Attribut |
Add im LDAP Connector
Neue Objekte und Attribute fügen Sie mit <addRequest>
ein.
Beispiel
Die Anweisung zum Einfügen eines Objektes Alice Johnson
vom Typ Person
lautet:
<addRequest
dn="OU=Marketing,DC=inubit,DC=com">
<attr name="objectclass">
<value>person</value>
</attr>
<attr name="objectclass">
<value>organizationalPerson</value>
</attr>
<attr name="sn">
<value>Johnson</value>
</attr>
<attr name="givenName">
<value>Alice</value>
</attr>
<attr name="title">
<value>Software Design Engineer</value>
</attr>
</addRequest>
Dialog LDAP Connector Eigenschaften
In diesem Dialog haben Sie folgende Optionen:
LDAP Server
-
URL
-
LDAP: Ersetzen Sie
<hostname>
durch den Namen oder die IP-Adresse des LDAP-Servers. Den Protokollnamenldap://
können Sie weglassen. -
LDAP über SSL: Um eine sichere Verbindung via SSL herzustellen, ersetzen Sie den Protokollnamen
ldap
durchldaps
und<hostname>
durch den Namen oder die IP-Adresse des LDAP-Servers. -
LDAP START TLS: Um eine sichere Verbindung via START TLS herzustellen, ersetzen Sie
<hostname>
durch den Namen oder die IP-Adresse des LDAP-Servers und aktivieren Sie die Checkbox Verschlüsselung aktivieren. Den Protokollnamenldap://
können Sie weglassen.Wenn die Checkbox Verschlüsselung aktivieren aktiviert ist und die Server-URL mit
ldap://
beginnt, wird START TLS verwendet. Beginnt die Server-URL mitldaps://
, wird automatisch LDAP über SSL verwendet, und die Checkbox Verschlüsselung aktivieren wird ignoriert.Wenn der Verbindungstest mit der voreingestellten Portnummer
389
fehlschlägt, erfragen Sie die Portnummer des LDAP-Servers bei dem Administrator des LDAP-Servers.
-
-
SSL-Button
Zur Sicherung der Kommunikation mit SSL, siehe Dialog SSL-Konfiguration.
Client-Authentifizierung Aliases sind nicht anwendbar, daher hat die Auswahl eines Alias keine Auswirkung.
-
Connection Pooling
Aktivieren Sie diese Option, um bestehende Verbindungen zum LDAP-Server wiederzuverwenden.
-
Verschlüsselung Aktivieren
Um die Verschlüsselung der Verbindung mit dem LDAP Server via START TLS or SSL zu aktivieren, wählen Sie die Checkbox Verschlüsselung Aktivieren.
Authentifizierung
-
Anonymes Login
Wählen Sie diese Option, wenn der LDAP-Server ein anonymes Login unterstützt.
-
Statische Zugangsdaten verwenden
-
Login/Passwort
Wenn Sie kein anonymes Login verwenden, geben Sie Ihre Benutzerkennung und Passwort für den LDAP-Server an.
-
Aus dem Credentials Manager auswählen
Für die Authentifizierung können Sie auch Zugangsdaten verwenden, die im Credentials Manager verwaltet werden.
-
Namensdienst
-
Klassenname
Vorbelegt mit der Standard-Java Klasse, welche mit der INUBIT-Software ausgeliefert wird. Um eine andere Klasse für den LDAP-Namens- und Verzeichnisdienst zu verwenden, geben Sie den Klassennamen ein.
Stellen Sie sicher, dass die angegebene Klasse im Java-Classpath vorhanden ist!
Weitere Einstellungen
-
Behandlung Referenzen
Legen Sie fest, wie Referenzen auf andere Verzeichnisse behandelt werden sollen.
-
Folgen
Jeder Referenz automatisch folgen
-
Ignorieren (Standard)
Referenzen ignorieren
-
-
Verbindungstest
-
Verbindung testen
Zum Testen, ob die Verbindung mit Ihren Angaben erfolgreich aufgebaut werden kann.
-