Qu’est-ce que le Lightweight Directory Access Protocol (LDAP) ?
- Glossaire IAM
- Qu’est-ce que le Lightweight Directory Access Protocol (LDAP) ?
Le Lightweight Directory Access Protocol (LDAP) est un protocole ouvert et neutre par rapport au fournisseur que les applications utilisent pour accéder et maintenir les informations d'annuaire sur un réseau. Un annuaire est un dépôt centralisé de données concernant les utilisateurs, les groupes et les appareils d'une organisation, et le protocole LDAP est le plus couramment utilisé pour authentifier les utilisateurs auprès de cet annuaire. LDAP fonctionne en coulisses lorsque les utilisateurs se connectent à un compte e-mail professionnel, un VPN ou une application interne de l’entreprise avec un seul nom d’utilisateur et mot de passe. Au lieu que chaque application maintienne sa propre liste d’utilisateurs, LDAP permet à plusieurs applications de vérifier leurs identifiants dans un annuaire centralisé partagé – ce qui en fait une technologie fondamentale pour se connecter aux systèmes d’entreprise.
LDAP a été conçu comme une alternative plus simple et plus efficace au Directory Access Protocol (DAP), un ancien protocole d’accès gourmand en ressources issu de la norme d’annuaire X.500. LDAP a conservé l’idée centrale d’un annuaire structuré tout en éliminant l’implémentation complexe et la surcharge, ce qui a grandement facilité son adoption.
LDAP vs Active Directory
Bien qu’on pense souvent que LDAP et Active Directory sont des alternatives concurrentes, ce sont deux choses totalement différentes. LDAP est un ensemble de règles standard — ou un langage commun — permettant d'accéder aux informations d'un annuaire et de les gérer. Il ne stocke aucune donnée lui-même ; c’est plutôt le protocole que les applications utilisent pour communiquer avec un annuaire.
Active Directory (AD) est le produit de service d'annuaire de Microsoft destiné au stockage et à la gestion d'informations sur les utilisateurs, les groupes et les périphériques au sein d'un réseau. LDAP est un protocole qu'Active Directory utilise pour permettre aux applications de lire dans son annuaire et d'y écrire. En termes plus simples, LDAP est un langage qu’Active Directory peut utiliser. Puisque LDAP est une norme ouverte et neutre envers les fournisseurs, elle est prise en charge par divers produits et services d’annuaire, notamment OpenLDAP, JumpCloud et Oracle Internet Directory. Les applications peuvent s’appuyer sur le même protocole, quel que soit l'annuaire choisi par l’organisation ; cette flexibilité est une grande raison pour laquelle LDAP est si largement adopté.
Comment fonctionne le protocole LDAP ?
LDAP suit un modèle client-serveur, où le client est l’application qui a besoin des informations d'annuaire (un écran de connexion ou un programme de messagerie) et le serveur est l'annuaire lui-même. Une interaction typique avec un annuaire LDAP implique que le client envoie une demande, que le serveur LDAP la traite contre l'annuaire et que le serveur renvoie une réponse. Pour comprendre comment un annuaire est organisé, il est utile de comprendre ce qui peut être stocké à l’intérieur :
- Entrée : une seule entrée dans l’annuaire. Une entrée représente généralement une chose, comme une personne, un groupe ou un appareil.
- Attributs : les données attachées à une entrée, y compris un nom, une adresse e-mail, un numéro de téléphone ou un département. Chaque attribut a un type et une valeur.
- Nom distingué (DN) : l'« adresse » unique qui identifie une entrée dans l’annuaire, ce qui signifie qu’aucune entrée ne peut partager le même DN. Il est écrit sous forme de chemin, construit à partir du nom de l’entrée ainsi que des catégories sous lesquelles elle se trouve, indiquant au annuaire exactement où trouver une entrée.
Les entrées sont organisées dans une hiérarchie appelée le Directory Information Tree (DIT). Comme un organigramme d’entreprise, le DIT se ramifie d’une racine large vers des groupes plus restreints comme les départements, puis enfin vers des entrées individuelles, comme les utilisateurs. Cette structure arborescente rend un DN lisible comme un chemin, chaque DN suivant le parcours du sommet de l’arbre jusqu’à son entrée.
Cas d’usage courants du LDAP
La quasi-totalité des usages de LDAP repose sur une idée principale : de nombreuses applications peuvent partager une source centrale de vérité sur les utilisateurs et les ressources au lieu que chaque application conserve la sienne. Voici les façons les plus courantes dont les organisations utilisent le LDAP.
Authentification et autorisation
Le cas d’usage principal de LDAP couvre à la fois l’authentification et l’autorisation. L’authentification consiste à vérifier qui est un utilisateur, ce qui se fait via l’opération de liaison LDAP : une application soumet une identité utilisateur et un mot de passe, que l'annuaire confirme ou rejette. L’autorisation consiste à décider ce qu’un utilisateur authentifié est autorisé à faire. Les annuaires LDAP organisent les utilisateurs en groupes, et les applications vérifient l’appartenance à un groupe pour accorder ou refuser l’accès. Par exemple, seuls les membres du groupe « RH » peuvent modifier au sein du système de paie.
Gestion centralisée des utilisateurs
Traditionnellement, chaque application conservait sa propre liste d’utilisateurs et de mots de passe. Intégrer un nouvel employé signifiait autrefois créer des comptes à plusieurs endroits un par un, et le débranchement signifiait retrouver et désactiver chacun de ces comptes, créant un véritable risque de sécurité si même un compte était manqué. Avec LDAP, il y a un annuaire contre lequel chaque application s’authentifie. Le résultat est une intégration plus rapide, un départ plus fluide, des politiques de mots de passe cohérentes et un emplacement central pour auditer qui a accès à quoi.
Fondations d’authentification unique (SSO)
Puisque chaque application peut pointer vers le même annuaire, LDAP fournit la base pour l’authentification unique (SSO), où un ensemble d’identifiants fonctionne à travers différents systèmes. Pour clarifier, le LDAP est une base pour la SSO plutôt qu’une SSO elle-même. Une expérience SSO complète, permettant à un utilisateur de se connecter une seule fois et de passer d'une application à l'autre sans ressaisir son mot de passe, intègre généralement des protocoles supplémentaires, mais la source d'identité partagée sous-jacente est souvent un annuaire LDAP.
Recherches de contacts
Parce que l’annuaire contient les personnes avec leurs attributs, les applications peuvent l’interroger sous forme d’un carnet d’adresses partagé à l’échelle de l’entreprise. Par exemple, un client de messagerie peut compléter automatiquement l’adresse d’un collègue dès que l’on commence à saisir son nom, ou une recherche dans l’annuaire du personnel d’un outil interne peut afficher les coordonnées d’un collègue. Ici, LDAP fonctionne exactement comme prévu : les annuaires sont optimisés en lecture, conçus pour gérer un grand nombre de recherches rapides, ce qui les rend bien adaptés à ce type de requête.
Stockage des informations de configuration
Au-delà des personnes, un annuaire peut stocker des entrées pour les ressources machines, y compris les imprimantes réseau, les serveurs et les dispositifs partagés. Cela permet aux applications et aux utilisateurs de découvrir et de se connecter à ces ressources depuis un seul lieu central, plutôt que de les configurer manuellement. Une station de travail peut localiser une imprimante proche via l'annuaire ou un système peut extraire les réglages de son appareil au démarrage. Bien que ce soit un cas d’usage plus modeste, cela montre la flexibilité du LDAP.
Ports LDAP et sécurité
Par défaut, LDAP communique via le port 389, qui est le port standard pour le trafic LDAP. Cependant, à lui seul, le LDAP n’est pas chiffré, donc les données voyagent en clair. Toute personne capable d’intercepter ce trafic pourrait le lire, y compris des informations sensibles comme les noms d’utilisateur et les mots de passe. C’est un risque majeur pour un protocole si souvent utilisé pour gérer les connexions, c’est pourquoi le chiffrement est fortement recommandé. Voici deux des méthodes les plus courantes pour sécuriser le protocole LDAP :
- LDAPS utilise le port 636. Ici, la connexion est chiffrée dès qu’elle est établie, ce qui protège le trafic pendant toute la session. Le S signifie secure, comme c’est le cas dans HTTPS.
- StartTLS fonctionne sur le port standard 389. Au lieu d’utiliser un port sécurisé séparé, il démarre comme une connexion LDAP ordinaire puis la met à niveau vers un port chiffré via TLS. Le résultat final est similaire à LDAPS, mais il se négocie sur le même port au lieu d’un port dédié.
La principale leçon est qu’un simple LDAP sur le port 389 n’offre aucune protection en soi. Le chiffrement doit être considéré comme essentiel, que ce soit via LDAPS au port 636 ou StartTLS au port 389.
Avantages et inconvénients du LDAP
Les points forts de LDAP expliquent pourquoi il est depuis longtemps un pilier de l’identité d’entreprise, tandis que ses limites indiquent des situations où il nécessite des outils de soutien ou n’est pas le meilleur adapté.
| Avantages du LDAP | Inconvénients du LDAP |
|---|---|
Avantages du LDAP
| Inconvénients du LDAP
|