-
Quentin CHEVALIER authoredQuentin CHEVALIER authored
Qu'est ce qu'un LDAP ?
LDAP signifie Lightweight Directory Access Protocol ; c'est donc un protocole, comme http, et pas une structure de données à proprement parler. Comme http, il fonctionne par chaîne de caractères appelés URI. La structure d'un LDAP est cependant forcément celle d'un arbre, avec une racine à la fin de l'URI et le noeud recherché à la fin. Par exemple "uid=louis.vaneau,ou=eleves,dc=frankiz,dc=net", qui permet d'accéder à la feuille associée à Louis Vaneau dans le LDAP de frankiz.
Il s'agit d'une structure particulièrement rigide mais efficace en lecture. Chaque noeud contient un certain nombre de champs qui ne sont pas nécessairement tous remplis, et qui n'ont pas forcément une seule variable par champ. Un LDAP est une structure parfaitement adapté à la réalisation d'un annuaire car pensé pour cela dès l'origine ; très efficace en lecture, il brille moins en écriture.
La technologie est ancienne et bien connue. Le LDAP de Frankiz, OpenLDAP, contient beaucoup de fonctionnalités sympathique comme le hashage inclus des mots de passe avec salt conformément à l'état de l'art.
Un wrapper sympathique
On accède sur un LDAP par des requêtes LDAP, d'où l'intérêt d'une bibliothèque comme ldap.js
qui fait office de traducteur javascript/LDAP, un peu comme knex et SQL. On s'intéressera particulièrement à la partie client
qui est celle qui permet d'agir sur le LDAP.
Cette bibliothèque est reprise et re-wrappée dans la classe Basics
.
Une interface graphique agréable
Pour explorer un LDAP, vous pouvez utiliser JXplorer
. Il s'agit d'un logiciel OpenSource en Java très iparfait mais qui permet de rapidement parcourir les champs d'un LDAP et de mener des petites recherches dessus.