Flux rss
Collection CommentÇaMarche.net
Bookmark Ajouter aux favoris / Partager

Introduction à LDAP

LDAP (Lightweight Directory Access Protocol, traduisez Protocole d'accès aux annuaires léger et prononcez "èl-dap") est un protocole standard permettant de gérer des annuaires, c'est-à-dire d'accéder à des bases d'informations sur les utilisateurs d'un réseau par l'intermédiaire de protocoles TCP/IP.

Les bases d'informations sont généralement relatives à des utilisateurs, mais elles sont parfois utilisées à d'autres fins comme pour gérer du matériel dans une entreprise.

Le protocole LDAP, développé en 1993 par l'université du Michigan, avait pour but de supplanter le protocole DAP (servant à accéder au service d'annuaire X.500 de l'OSI), en l'intégrant à la suite TCP/IP.

Le service d'annuaire X.500 était un standard conçu en 1988 par les opérateurs télécoms prévu pour interconnecter tout type d'annuaire dans un but de normalisation. Celui-ci définit :

  • des règles de nommages pour les éléments qu'il contient
  • des protocoles d'accès à l'annuaire (dont DAP)
  • des moyens d'authentification de l'utilisateur

Toutefois, la norme X500 était basée sur les protocoles ISO et impliquait donc une mise en place très lourde. Ainsi, en 1993 l'université du Michigan a adapté le protocole DAP de la norme X.500 au protocole TCP/IP et mis au point LDAP.

A partir de 1995, LDAP est devenu un annuaire natif (standalone LDAP), afin de ne plus servir uniquement à accéder à des annuaires de type X500, c'est-à-dire en gérant sa propre base de données. LDAP est ainsi une version allégée du protocole DAP, d'où son nom de Lightweight Directory Access Protocol prévu pour fonctionner avec les protocoles TCP/IP.

Présentation de LDAP

Le protocole LDAP définit la méthode d'accès aux données sur le serveur au niveau du client, et non la manière de laquelle les informations sont stockées.

Le protocole LDAP en est actuellement à la version 3 et a été normalisé par l'IETF (Internet Engineering Task Force). Ainsi, il existe une RFC pour chaque version de LDAP, constituant un document de référence :

Le protocole LDAP

Le protocole LDAP est uniquement prévu pour gérer l'interfaçage avec les annuaires. Plus exactement il s'agit d'une norme définissant la façon suivant laquelle les informations sont échangées entre le client et le serveur LDAP ainsi que la manière de laquelle les données sont représentées. Ainsi ce protocole se conforme à quatre modèles de base :

  • un modèle d'information : définissant le type d'information stocké dans l'annuaire
  • un modèle de nommage (parfois appelé modèle de désignation) : définissant la façon de laquelle les informations sont organisées dans l'annuaire et leur désignation
  • un modèle fonctionnel (parfois appelé modèle de services) : définissant la manière d'accéder aux informations et éventuellement de les modifier, c'est-à-dire les services offerts par l'annuaire.
  • un modèle de sécurité : définissant les mécanismes d'authentification et de droits d'accès des utilisateurs à l'annuaire.
De plus, LDAP définit la communication entre
  • Le client et le serveur, c'est-à-dire les commandes de connexion et de déconnexion au serveur, de recherche ou de modification des entrées
  • Les serveurs eux-mêmes, pour définir d'une part le service de réplication (replication service), c'est-à-dire un échange de contenu entre serveurs et synchronisation, d'autre part pour créer des liens entre les annuaires (on parle de referral service).
Le format des données dans le protocole LDAP n'est pas le format ASCII comme c'est le cas pour la plupart des protocoles mais une version allégée du Basic Encoding Rules (BER) appelée Lightweight Basic Encoding Rules (LBER).

D'autre part, LDAP fournit un format d'échange (LDIF, Lightweight Data Interchange Format) permettant d'importer et d'exporter les données d'un annuaire avec un simple fichier texte

Enfin il existe un certain nombre d'API (Application Programming Interface, c'est-à-dire des interfaces de programmation) permettant de développer des applications clientes permettant de se connecter à des serveurs LDAP avec différents langages Ainsi LDAP fournit à l'utilisateur des méthodes lui permettant de :

  • se connecter
  • se déconnecter
  • rechercher des informations
  • comparer des informations
  • insérer des entrées
  • modifier des entrées
  • supprimer des entrées
D'autre part le protocole LDAP (dans sa version 3) propose des mécanismes de chiffrement (SSL, ...) et d'authentification (SASL) permettant de sécuriser l'accès aux informations stockées dans la base.

De plus, contrairement à la plupart des protocoles, LDAP permet d'effectuer plusieurs requêtes sur le serveur d'annuaire à l'aide d'une seule connexion. en effet, le protocole HTTP ne permet d'effectuer qu'une et une seule requête à chaque connexion au serveur.

requêtes sur un serveurs LDAP

Extensibilité du protocole LDAP

Le protocole LDAP version 3 a été conçu de telle façon qu'il soit possible d'y ajouter des fonctionnalités sans avoir à s'écarter de la norme grâce à trois concepts :

  • opérations étendues LDAP (LDAP extended operations) permettant de rajouter une opération aux neuf opérations originales
  • contrôles LDAP (LDAP controls) permettant d'associer des paramètres supplémentaires à une opération pour en modifier le comportement
  • SASL (Simple Authentification and Security Layer), une couche supplémentaire permettant d'utiliser des méthodes d'authentification externes de façon modulaire

Consulter les données

LDAP fournit un ensemble de fonctions (procédures) pour effectuer des requêtes sur les données afin de rechercher, modifier, effacer des entrées dans les répertoires.

Voici la liste des principales opérations que LDAP peut effectuer :

Opération Description
Abandon Abandonne l'opération précédemment envoyées au serveur
Add Ajoute une entrée au répertoire
Bind Initie une nouvelle session sur le serveur LDAP
Compare Compare les entrées d'un répertoire selon des critères
Delete Supprime une entrée d'un répertoire
Extended Effectue des opérations étendues
Rename Modifie le nom d'une entrée
Search Recherche des entrées d'un répertoire
Unbind Termine une session sur le serveur LDAP

Le format d'échange de données LDIF

LDAP fournit un format d'échange (LDIF, Lightweight Data Interchange Format) permettant d'importer et d'exporter les données d'un annuaire avec un simple fichier texte. La majorité des serveurs LDAP supportent ce format, ce qui permet une grande interopérabilité entre eux.

La syntaxe de ce format est la suivante :

[<id>]
dn: <distinguished name>
<attribut> : <valeur>
<attribut> : <valeur>
...
Dans ce fichier id est facultatif, il s'agit d'un entier positif permettant d'identifier l'entrée dans la base de données.

  • chaque nouvelle entrée doit être séparée de la définition de l'entrée précédente à l'aide d'un saut de ligne (ligne vide)
  • Il est possible de définir un attribut sur plusieurs lignes en commençant les lignes suivantes par un espace ou une tabulation
  • Il est possible de définir plusieurs valeurs pour un attribut en répétant la chaîne nom:valeur sur des lignes séparées
  • lorsque la valeur contient un caractère spécial (non imprimable, un espace ou :), l'attribut doit être suivi de :: puis de la valeur encodée en base64


Dernière modification le mardi 14 octobre 2008 à 17:40:31.Ce document intitulé « LDAP - Le protocole LDAP » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Le protocole LDAP Introduction à LDAP LDAP (Lightweight Directory Access Protocol, traduisez Protocole d'accès aux annuaires léger et prononcez "èl-dap") est un protocole standard permettant de gérer des annuaires, c'est-à-dire d'accèder à des bases d'informations... www.commentcamarche.net/contents/internet/ldap.php3
LDAP - Le modèle d'information Introduction au modèle d'information Le modèle d'information du protocole LDAP définit le type de données pouvant être stocké dans l'annuaire LDAP. On appelle entrée (en anglais entry) l'élément de base de l'annuaire. Chaque entrée de l'annuaire... www.commentcamarche.net/contents/ldap/ldapinfo.php3
Télécharger LDAP Client.Net LDAP Client.Net est un client de programmation fusionnant ensemble Net.Framework avec LDAP (Lightweight Directory Access Protocol) dans un pack puissant et intuitif. C’est un composant désigné pour l’accès direct au serveur LADP à partir... www.commentcamarche.net/telecharger/telecharger-34059802-ldap-client-net
Le protocole BitTorrentLe protocole BitTorrent 1. Légalité 2. Le principe 3. Fonctionnement 4. Transparence de la vie privée 5 . Les logiciels Adresses complémentaires 1. Légalité Attention ! A la base, le BitTorrent est légal. Mais son procédé est parfois... www.commentcamarche.net/faq/sujet-533-le-protocole-bittorrent
Protocole IPX/SPX dans VistaLe protocole IPX/SPX sert à de nombreux anciens jeux pour pouvoir jouer en réseau (Red Alert, Command & Conquer, etc.). Malheureusement, Microsoft a retiré le support du protocole IPX/SPX dans Vista (32bit). Néanmoins, il est possible de... www.commentcamarche.net/faq/sujet-5413-protocole-ipx-spx-dans-vista
Besoin d'aide : LDAP SSOJe réalise un projet sur le Single Sign On (SSO), où j'ai pu constater que les annuaires LDAP joue un très grand rôle. Mais le problème, c'est que toutes les informations que je trouve sur LDAP sont une présentation de ce protocole et de l'utilisation... www.commentcamarche.net/forum/affich-61627-besoin-d-aide-ldap-sso
Protocol ed2k (Résolu)Bonjour, quand je veux télécharger un film divx, il y a ce message : firefox ne sait pas ouvrir cette adresse car le protocole (ed2k) n'est associé à aucun programme. Quelqu'un peut m'aider ??? Merci d'avance www.commentcamarche.net/forum/affich-5601219-protocol-ed2k
[LDAP] Probleme de connexion (Résolu)Bonjour les Amis ! J'ai fait la config de mon serveur OPEN LDAP et tout marchait bien j'usqu'a ces deux jours. A la commande : ldapsearch -b « dc=cnce, dc=ci» « dc=cnce » Il me repond : ldap_sasl_interactive_bind_s: Can't contact LDAP server (-1)... www.commentcamarche.net/forum/affich-2413610-ldap-probleme-de-connexion
Les protocoles de messagerie (SMTP, POP3 et IMAP4)Introduction à la messagerie électronique Le courrier électronique est considéré comme étant le service le plus utilisé sur Internet. Ainsi la suite de protocoles TCP/IP offre une panoplie de protocoles permettant de gérer facilement le routage... www.commentcamarche.net/contents/internet/smtp.php3
Le protocole FTP (File Transfer Protocol)Introduction au protocole FTP Le protocole FTP (File Transfer Protocol) est, comme son nom l'indique, un protocole de transfert de fichier. La mise en place du protocole FTP date de 1971, date à laquelle un mécanisme de transfert de... www.commentcamarche.net/contents/internet/ftp.php3
Le protocole HTTPIntroduction au protocole HTTP Le protocole HTTP (HyperText Transfer Protocol) est le protocole le plus utilisé sur Internet depuis 1990. La version 0.9 était uniquement destinée à transférer des données sur Internet (en particulier des pages Web... www.commentcamarche.net/contents/internet/http.php3