Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
15 juillet 2013

LDAP Lightweight Directory Access Protocol           Standards LDAP


rfc4516

rfc4516

Uniform Resource Locator

   Ce document décrit le format des URL LDAP v3, ainsi que les mécanismes d'extensions d'URL

Définition d'URL


ldapurl = scheme COLON SLASH SLASH [host [COLON port]]
    [SLASH dn [QUESTION [attributes]
    [QUESTION [scope] [QUESTION [filter]
    [QUESTION extensions]]]]]
    
scheme = "ldap"
dn = distinguishedName
attributes = attrdesc *(COMMA attrdesc)
attrdesc = selector *(COMMA selector)
selector = attributeSelector
scope = "base" / "one" / "sub"
extensions = extension *(COMMA extension)
extension = [EXCLAMATION] extype [EQUALS exvalue]
extype = oid
exvalue = LDAPString
EXCLAMATION = %x21 ; exclamation mark ("!")
SLASH = %x2F ; forward slash ("/")
COLON = %x3A ; colon (":")
QUESTION = %x3F ; question mark ("?")
    
"ldap" indique une/des entrées accéssible depuis le serveur LDAP
‹dn› est un DN identifiant l'objet de base pour la recherche
‹attributes› indique quels attributs doivent être retournés
‹scope› spécifie le scope de la recherche
‹filter› spécifie le filtre de recherche
‹extensions› fournis un mécanisme d'extension, utilisé dans de futures extension des URL. préfix par '!' indique une extension critique

Percent-Encoding

une URL LDAP doit consister des jeux de caractères restreins dans une des production suivantes:(RFC3986)
‹reserved›
‹unpreserved›
‹pct-encoded›

Valeurs par défaut

‹port› 389
‹dn› DN vaut ''
‹attributes› renvois tous les attributs utilisateur
‹scope› base
‹filter› (objectClass=*)
‹extensions› par extensions

Exemples

Réfère à l'entrée université du Michigan, disponible sur un serveur LDAP
ldap:///o=University%20of%20Michigan,c=US
Idem, en précisant le serveur LDAP
ldap://ldap1.example.net/o=University%20of%20Michigan,c=US
Idem en référant uniquement à l'attribut postalAddress
ldap://ldap1.example.net/o=University%20of%20Michigan,c=US?postalAddress
spécifie le serveur:port et référant à toute entrée avec un cn="Babs Jensen" et récupérant tous les attributs
ldap://ldap1.example.net:6666/o=University%20of%20Michigan,c=US??sub?(cn=Babs%20Jensen)
Réfère à tous les enfants de c=GB
LDAP://ldap1.example.com/c=GB?objectClass?ONE
Récupère le mail de l'entrée o=Question%3f,c=US
ldap://ldap2.example.com/o=Question%3f,c=US?mail
Illustre l'interaction entre les mécanismes de filters-quoting des chaînes LDAP et les mécanisme d'URL-quoting
ldap://ldap3.example.com/o=Babsco,c=US???(four-octet=%5c00%5c00%5c00%5c04)
Illustre l'interaction entre les macnismes de DN-quoting et d'URL-quoting
ldap://ldap.example.com/o=An%20Example%5C2C%20Inc.,c=US
Les 3 requêtes suivantes sont identiques et pointent sur le root DSE de ldap.example.net
ldap://ldap.example.net
ldap://ldap.example.net/
ldap://ldap.example.net/?
Utilisation d'une extension expérimentale et hypothétique:
ldap:///??sub??e-bindname=cn=Manager%2cdc=example%2cdc=com
ldap:///??sub??!e-bindname=cn=Manager%2cdc=example%2cdc=com