4D v16.3

LDAP Search

Home

 
4D v16.3
LDAP Search

LDAP Search 


 

LDAP Search ( dnRootEinstieg ; Filter {; Reichweite {; Attribute {; AttributealsArray}}} ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
dnRootEinstieg  String in Distinguished Name des Root Einstiegs zum Starten der Suche
Filter  String in LDAP Suchfilter
Reichweite  String in Reichweite der Suche: "base" (Standard), "one" oder "sub"
Attribute  Array Text in zu holendes Attribut bzw. Attribute
AttributealsArray  Array Boolean in true = Attribute als Array zurückgeben
false = Attribute als einfache Variable zurückgeben
Funktionsergebnis  Objekt in Schlüssel/Wert Attribute

Der Befehl LDAP Search sucht nach dem ersten Vorkommen, das zum definierten Kriterium im Ziel LDAP Server passt. Dieser Befehl muss innerhalb einer Verbindung zum LDAP Server ausgeführt werden, geöffnet mit LDAP LOGIN. Andernfalls wird der Fehler 1003 zurückgegeben.

In dnRootEinstieg übergeben Sie den Distinguished Name des Root Einstiegs für den LDAP Server; die Suche startet an dieser Stelle.

In Filter übergeben Sie den auszuführenden LDAP Suchfilter. Der Filterstring muss die Vorgaben von rfc2225 berücksichtigen. Standardmäßig, d.h. ohne diesen Parameter, wird ein leerer String "" benutzt (kein Filter wird angewendet.).

In Reichweite übergeben Sie eine der folgenden Konstanten unter dem Thema LDAP:

Konstante Typ Wert Kommentar
LDAP all levels Zeichenkette sub Suche nur in der Root Einstiegsebene, definiert durch dnRootEinstieg (Standard, wenn weggelassen)
LDAP root and next Zeichenkette one Suche in der Root Einstiegsebene, definiert durch dnRootEinstieg und in den direkt nachfolgenden Einstiegen auf einer Ebene
LDAP root only Zeichenkette base Suche nur in der Root Einstiegsebene, definiert durch dnRootEinstieg (Standard, wenn weggelassen)

In Attribute übergeben Sie ein Text Array mit der Liste aller LDAP Attribute, die von den passenden Einstiegspunkten zu holen sind. Standardmäßig, d.h. ohne diesen Parameter, werden alle Attribute geholt.

Hinweis: Beachten Sie, dass LDAP Attributnamen zwischen Groß- und Kleinschreibung unterscheiden. Weitere Informationen finden Sie auf der Seite Attributes. Sie zeigt alle verfügbaren Attribute für Microsoft Active Directory.

Standardmäßig gibt der Befehl bei mehreren Ergebnissen Attribute als Collection zurück, bei einem einzelnen Ergebnis als Variable. Mit dem optionalen Parameter AttributealsArray können Sie festlegen, ob der Wert bzw. die zurückgegebenen Werte als Collection oder Variable formatiert werden sollen:

  • Übergeben Sie true in einem Element, wird das entsprechende Element des Parameters Attribute in einer Collection zurückgegeben. Wird nur ein Wert gefunden, gibt der Befehl eine Collection mit einem einzelnen Element zurück.
  • Übergeben Sie false in einem Element, wird das entsprechende Element des Parameters Attribute in einer einfachen Variablen zurückgegeben. Werden mehrere Einträge gefunden, gibt der Befehl nur das erste Element zurück.

Die Telefonnummer des Benutzers "smith" im Firmenverzeichnis erhalten:

 ARRAY TEXT($_tabAttributes;0)
 APPEND TO ARRAY($_tabAttributes;"cn")
 APPEND TO ARRAY($_tabAttributes;"phoneNumber")
 LDAP LOGIN($url;$dn;$pwd)
 $filter:="cn=*smith*"
 $vfound:=LDAP Search($dnSearchRootEntry;$filter;LDAP all levels;$_tabAttributes)
 LDAP LOGOUT

Ein Array mit allen Werten für das Attribut "memberOf" erhalten, um die Gruppenzugehörigkeit für einen Benutzer abzufragen:

 C_OBJECT($entry)
 ARRAY TEXT($_tabAttributes;0)
 ARRAY BOOLEAN($_tabAttributes_asArray;0)
 APPEND TO ARRAY($_tabAttributes;"cn")
 APPEND TO ARRAY($_tabAttributes_asArray;False)
 APPEND TO ARRAY($_tabAttributes;"memberOf")
 APPEND TO ARRAY($_tabAttributes_asArray;True)
 
 LDAP LOGIN($url;$login;$pwd;LDAP password plain text)
 $entry:=LDAP Search($dnSearchRootEntry;"cn=adrien*";LDAP all levels;$_tabAttributes;$_tabAttributes_asArray)
 LDAP LOGOUT
 
 ARRAY TEXT($_arrMemberOf;0)
 OB GET ARRAY($entry;"memberOf";$_arrMemberOf)
  // in $_arrMemberOf haben wir ein Array mit allen Gruppen



Siehe auch 

LDAP
LDAP SEARCH ALL

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: LDAP
Nummer: 1328

 
GESCHICHTE 

Erstellt: 4D v15

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)