Informationen zum Lightweight Directory Access Protocol (LDAP)
Lightweight Directory Access Protocol (LDAP) ist ein dem Industriestandard entsprechendes Protokoll für den Zugriff auf und die Anzeige von Informationen über Benutzer und Geräte. LDAP ermöglicht Ihnen die Organisation und Speicherung dieser Informationen in einem Verzeichnis. Ein LDAP-Verzeichnis ist insofern dynamisch, als dass es ggf. aktualisiert werden kann. Es wird verteilt, wodurch ein Schutz vor einem zentralen Ausfall gegeben ist.
Die nachstehenden Beispiele beschreiben LDAP-Abfragen, die zum Durchsuchen des Verzeichnisses verwendet werden können:
- Alle Einträge abrufen: (objectClass=*)
- Einträge abrufen, die 'bob' an irgendeiner Stelle des Namens enthalten: (cn=*bob*)
- Einträge mit einem allgemeinen Namen abrufen, die größer/gleich 'bob' sind: (cn>='bob')
- Alle Benutzer mit einem E-Mail-Attribut abrufen: (&(objectClass=user)(email=*))
- Alle Benutzereinträge mit einem E-Mail-Attribut und einem Nachnamen abrufen, der 'Schmidt' entspricht: (&(sn=smith)(objectClass=user)(email=*))
- Alle Benutzereinträge mit einem Namen abrufen, der mit 'Andre', 'Chris' oder 'Micha' beginnt: (&(objectClass=User) (| (cn=andy*)(cn=steve*)(cn=margaret*)))
- Alle Benutzer ohne E-Mail-Attribut abrufen: (!(email=*))
Die formale Definition des Suchfilters lautet wie folgt (von RFC 1960):
- <filter> ::= '(' <filtercomp> ')'
- <filtercomp> ::= <and> > <or> > <not> > <item>
- <and> ::= '&' <filterlist>
- <or> ::= '|' <filterlist>
- <not> ::= '!' <filter>
- <filterlist> ::= <filter> > <filter> <filterlist>
- <item> ::= <simple> > <present> > <substring>
- <simple> ::= <attr> <filtertype> <value>
- <filtertype> ::= <equal> > <approx> > <ge> > <le>
- <equal> ::= '='
- <approx> ::= '~='
- <ge> ::= '>='
- <le> ::= '<='
- <present> ::= <attr> '=*'
- <substring> ::= <attr> '=' <initial> <any> <final>
- <initial> ::= NULL > <value>
- <any> ::= '*' <starval>
- <starval> ::= NULL > <value> '*' <starval>
- <final> ::= NULL > <value>
Das Token <attr> ist eine Zeichenfolge, die einen Attributtyp repräsentiert. Das Token <value> ist eine Zeichenfolge, die einen Attributwert repräsentiert, dessen Format vom zugrunde liegenden Verzeichnisdienst definiert wird.
Wenn ein <value> eines der folgenden Zeichen * oder ( or ) enthalten muss, stellen Sie den Backslash (\) vor das Zeichen.