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

  1. einen LDAP Connector mit Verbindungsinformationen zum LDAP-Server erstellen

  2. 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>
  3. 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:

module guide 1106 1

So gehen Sie vor

  1. Öffnen Sie den Workflow zum Bearbeiten.

  2. Öffnen Sie den XSLT Connector zum Bearbeiten.

  3. Öffnen Sie die Seite Module Editor.

  4. Im Abschnitt searchRequest des XSLT-Stylesheets, fügen Sie das Attribut pageSize 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:

    module guide 1106 2
  5. Klicken Sie auf Fertig stellen, um die Änderungen zu speichern.

  6. Konfigurieren Sie am Demultiplexer-Modul die Bedingung für der Verbindung zurück zum Joiner-Modul wie folgt:

    1. Klicken Sie im Abschnitt Bedingungen auf Bedingung hinzufügen.

    2. Klicken Sie links auf das Icon V.

    3. Wählen Sie die Modulvariable LDAPConnector.config.nextPage.

    4. Wählen Sie exists aus der Liste der Operatoren. Die Bedingung muss wie folgt aussehen:

      module guide 1107 1
  7. Klicken Sie auf OK, um die Änderungen zu speichern.

  8. 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:

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>

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 type="binary" einfügen. Die Werte aus dem LDAP-System für binäre Attribute werden mit der base64-Kodierung in der XML-Ausgangsnachricht abgelegt.

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>

Delete im LDAP Connector

Zum Löschen von Daten auf dem LDAP-Server wird die Anweisung <delRequest> verwendet.

Beispiel

Die Anweisung löscht das Objekt Alice aus der LDAP-Datenbank:

<delRequest dn="cn=Alice, ou=Marketing, dc=inubit,dc=com"/>

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 Protokollnamen ldap:// können Sie weglassen.

    • LDAP über SSL: Um eine sichere Verbindung via SSL herzustellen, ersetzen Sie den Protokollnamen ldap durch ldaps 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 Protokollnamen ldap:// 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 mit ldaps://, 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

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.