4. Clément OUDOT
● Administrateur LDAP depuis 2003 à LINAGORA
● LinID Dream Team Manager : http://linid.org
● Leader du projet LDAP Tool Box :
http://ltb-project.org
● Leader du projet LemonLDAP::NG :
http://lemonldap-ng.org
4
6. Le protocole LDAP
● Protocole défini par des standards (RFC)
● LDAPv2 en 1995, LDAPv3 en1997
● TCP/IP, LBER, ASN1
● 9 opérations unitaires et possibilités d'extension
● Schéma définissant les classes d'objet, les
attributs, les syntaxes et les règles de
comparaison
● Organisation des données en arbre
6
7. Flux LDAP
Client Annuaire
Connexion
Authentification
Authentification réussie
Recherche
Résultat de la recherche
Modification d'une entrée
Erreur lors de la modification
Ajout d'une entrée
Entrée ajoutée
Déconnexion
10. Quelques implémentations serveur
Propriétaires Université Libres
Novell
du Michigan
eDirectory Microsoft
Active
Directory OpenLDAP
IBM
CriticalPath Netscape
Directory
ApacheDS
Server
RedHat
Directory
SUN Server
Directory OpenDS
Server
Fedora
Directory
Oracle Server
Directory OpenDJ
Server Port 389
11. Exemples d'usage
● Infrastructure :
● Référentiel d'authentification
● Gestion des machines, des comptes SUDO
● Sécurité :
● Référentiel d'authentification et d'autorisation
● Stockage des certificats
● Utilisateur :
● Pages blanches, pages jaunes
● Intranet, carnet d'adresse
15. Les interfaces de gestion
● Dans le monde propriétaire :
● Calendra Directory Manager (Calendra)
● Meibo (Ilex)
● Certains Identity Manager (Oracle, Novell, etc.)
● En logiciel libre :
● LDAP Account Manager
● ldapSaisie
● Fusion Directory
● LinID Directory Manager
● OpenIDM (ForgeRock)
● En majorité : des développements spécifiques
15
16. Fonctionnalités attendues
● Conception des écrans (modèles HTML)
● Afficheur et éditeur de valeurs adaptés à chaque
type d'attribut
● Choix des libellés, internationalisation
● Délégation de gestion, modèle d'autorisation par
profils
● Flux métiers
● Respect du DIT initial
● Gestion des photos, navigation contextuelle, etc.
16
18. Historique
● Développements initiés à l'UPMC en 2002,
d'abord en PHP puis en Java, sous le nom
MetaLDAP
● Publication en Open Source sous le nom
InterLDAP en 2003, devient projet ObjectWeb en
2006 dans le cadre de FederID
● Création de l'offre LinID en 2008, et renommage
en LinID Content Manager puis LinID Directory
Manager, hébergé sur la forge LinID chez
LINAGORA
18
19. Couches logicielles
● LinID Directory Manager est un framework Web
construit sur :
● Tapestry 5
● Spring, Spring LDAP
● Maven
● Xstream
● Rhino
● Ehcache
19
20. Architecture technique
● Schéma enrichi :
● Reprend et surcharge le schéma technique LDAP
● Ajoute des propriétés comme les libellés, les listes de
valeurs, les recherches autorisées...
● Autorisations :
● Utilisation de règles implémentées dans l'interface avec le
langage LQL (LDAP Query Language)
● Possibilité de s'appuyer sur les droits côté annuaire LDAP
avec des contrôles étendus comme Get Effective Rights
● Dépôt d'entrées :
● Modélisation Java des entrées LDAP et des paramètres du
schéma enrichi, filtrées par la couche autorisation
20
21. Tester LinID Directory Manager
● Une application des démonstration est fournie
avec le framewok (sample)
● L'application embarque un annuaire OpenDS avec
quelques données de test, dont deux utilisateurs :
● jdoe/secret : administrateur
● jsmith/secret : utilisateur
● Possibilité de déployer dans Tomcat ou Jetty
● Démarrage depuis le SVN :
$ mvn -Popends jetty:run
21
23. Créer sa propre application de gestion
● Une phase d'étude préalable :
● Modèle de données
● Profils de droits
● Choix des écrans
● Copie de l'application de démonstration et import
dans Eclipse
● Génération du schéma enrichi (script Perl fourni:
eschemaGenerator.pl)
● Édition XML : schéma enrichi, règles LQL
● Adaptation des écrans
23
31. Merci de votre attention
http://www.linid.org
Logiciels et services Open Source
80 rue Roque de Fillol l 92800 PUTEAUX
Tel : 0810 251 251 l Fax : +33 1 46 96 63 64
www.linagora.com