Академический Документы
Профессиональный Документы
Культура Документы
A. Guermouche
A. Guermouche
Cours 7 : LDAP
Plan
A. Guermouche
Cours 7 : LDAP
Introduction
Plan
A. Guermouche
Cours 7 : LDAP
Introduction
Objectifs
Permet de fusionner plusieurs bases de donnes en un unique annuaire informatique base Microsoft Excel du personnel administratif base Microsoft Access du personnel enseignant base /etc/passwd des comptes unix base /etc/aliases (ou Sympa) des listes de diffusion base Samba des utilisateurs windows autres bases, MySQL, . . . ... Exemple: Comment envoyer un e-mail a lensemble du personnel administratif en sachant que ladministrateur recevra uniquement une liste de noms/prnoms?
A. Guermouche Cours 7 : LDAP 4
Introduction
Le concept dannuaire
Un annuaire est comme une base de donnes. . . on peut y mettre des information et les consulter Cependant un annuaire est spcialis : Ddi la lecture plus qu lcriture Laccs aux donnes se fait par des recherches multi-critres. Son objectif est de maintenir de faon cohrente et contrle une grande quantit de donnes. Exemples dannuaire : carnet dadresses annuaire tlphonique rpertoire des rues ...
A. Guermouche Cours 7 : LDAP 5
Introduction
Le concept dannuaire
Un annuaire est comme une base de donnes. . . on peut y mettre des information et les consulter Cependant un annuaire est spcialis : Ddi la lecture plus qu lcriture Laccs aux donnes se fait par des recherches multi-critres. Son objectif est de maintenir de faon cohrente et contrle une grande quantit de donnes. Diffrences annuaires/SGBD : Dans un annuaire : pas de dpendances entre les objets stocks les objets peuvent tre distribus sur plusieurs annuaires pour assurer une meilleure disponibilit les applications de lannuaire nont pas besoin de connatre la structure interne des donnes stockes
A. Guermouche Cours 7 : LDAP 5
Annuaire LDAP
Plan
A. Guermouche
Cours 7 : LDAP
Annuaire LDAP
Lannuaire LDAP
LDAP Lightweight Directory Access Protocol Hritier de lannuaire X500 (propos par lISO) standard conu par les oprateurs tlcom pour interconnecter leurs annuaires tlphoniques X500 adapt linternet LDAP (mme modle de schma, ...) LDAP a t propos en 1995 : Standard dannuaire au dessus de TCP/IP
Le protocole ne concerne pas le contrle daccs aux donnes de lannuaire
version 3 actuellement (RFC 2251) aussi RFC 2252 2256, RFC 2829 2830, RFC 2849
A. Guermouche
Cours 7 : LDAP
Annuaire LDAP
Objectifs
fournir aux utilisateurs des informations ables, facilement accessibles permettre aux utilisateurs de mettre jour eux-mme leurs informations personnelles rendre les informations accessibles de faon contrle viter la redondance dinformations : un seul annuaire pour lensemble des services faciliter la gestion (administration) des postes de travail, des quipements rseau Tout ceci est fait sans remettre en cause les applications existantes
A. Guermouche
Cours 7 : LDAP
Annuaire LDAP
Concepts
LDAP dnit : un protocole. accder linformation contenue dans lannuaire, un modle dinformation. le type des informations contenues dans lannuaire, un modle de nommage. comment linformation est organise et rfrence, un modle fonctionnel. comment accder linformation (syntaxe des requtes,etc. . . ), un modle de scurit. comment donnes et accs sont protgs, un modle de duplication. comment la base est rpartie entre serveurs, des API. pour dvelopper des applications clientes, LDIF. un format dchange de donnes.
A. Guermouche Cours 7 : LDAP 9
Annuaire LDAP
Protocole LDAP
Le protocole dnit : Comment stablit la communication client-serveur : commandes pour se connecter ou se dconnecter, pour rechercher, comparer, crer, modier ou effacer des entres. Comment stablit la communication serveur-serveur : changer leur contenu et le synchroniser (rplication service) crer des liens permettant de relier des annuaires les uns aux autres (referral service). Le format de transport de donnes : pas lASCII (comme pour HTTP, SMTP. . . ) mais le Basic Encoding Rules (BER), sous une forme allge (appele LBER : Lightweight BER)
A. Guermouche
Cours 7 : LDAP
10
Annuaire LDAP
Protocole LDAP
Le protocole dnit (suite) : Les mcanismes de scurit : mthodes de chiffrement et dauthentication mcanismes de rgles daccs aux donnes. Les oprations de base : interrogation : search, compare mise jour : add, delete, modify, rename connexion au service : bind, unbind, abandon
connexion et authentification rsultat authentification recherche message de rsultat
Client
Serveur LDAP
A. Guermouche
Cours 7 : LDAP
10
Protocole LDAP
Plan
A. Guermouche
Cours 7 : LDAP
11
Protocole LDAP
Le modle dinformation
Le modle dinformation dnit le type des donnes pouvant tre stockes dans lannuaire Lentre (Entry) = lment de base de lannuaire. Elle contient les informations sur un objet de lannuaire. Ces informations sont reprsentes sous la forme dattributs dcrivant les caractristiques de lobjet. Toute sorte de classe dobjet (rel ou abstrait) peut tre reprsente. Le schma de lannuaire dnit la liste des classes dobjets quil connat. Le Directory schema est la charte qui donne, pour le serveur, lensemble des dnitions relatives aux objets quil sait grer.
Le schma dcrit les classes dobjets, leurs types dattribut et leur syntaxe. Chaque entre de lannuaire fait obligatoirement rfrence une classe dobjet du schma et ne doit contenir que des attributs qui sont rattachs au type dobjet en question.
A. Guermouche Cours 7 : LDAP 12
Protocole LDAP
Le modle dinformation
A. Guermouche
Cours 7 : LDAP
13
Protocole LDAP
Le modle dinformation
top
person
organisationalUnit
organisationalPerson
inetOrgPerson
Chaque objet hrite des proprits (attributs) de lobjet dont il est le ls. On prcise la classe dobjet dune entre laide de lattribut objectClass. Il faut obligatoirement indiquer la parent de la classe dobjet en partant de lobjet top et en passant par chaque anctre de lobjet. A. Guermouche Cours 7 : LDAP
14
Protocole LDAP
Lobjet ls organizationalPerson ajoute des attributs comme : organizationUnitName, title, postalAddress. . . Lobjet petit-ls inetOrgPerson lui rajoute des attributs comme : mail, labeledURI, uid (userID), photo. . . Remarques : Une entre peut appartenir un nombre non limit de classes dobjets. Les attributs obligatoires sont la runion des attributs obligatoires de chaque classe.
A. Guermouche Cours 7 : LDAP 15
Protocole LDAP
Le modle de nommage
Il dnit comment les entres de lannuaire sont organises et comment elles sont rfrences. Structure arborescente contenant deux catgories dobjets : les conteneurs : dpart dune nouvelle branche (nud intermdiaire de larbre) peuvent contenir des conteneurs ou des feuilles gnralement, une sous-organisation de lorganisation (zone gographique,. . . ) les feuilles : elles reprsentent les donnes (gnralement les machines, les utilisateurs,. . . )
A. Guermouche
Cours 7 : LDAP
16
Protocole LDAP
Le modle de nommage
Il dnit comment les entres de lannuaire sont organises et comment elles sont rfrences. Structure arborescente contenant deux catgories dobjets : Structure logique hirarchique : le DIT (Directory Information Tree) Une entre est identie par un nom unique : le DN (Distinguish Name) RDN(Relative Distinguish Name)
root entry ou base DN dc=labri,dc=fr
ou=Hosts
ou=People
cn=admin
uid=toto
A. Guermouche
16
Protocole LDAP
Le format LDIF
LDIF LDAP Interchange Format Standard de reprsentation des entres sous format texte. Permet de :
faire des imports/exports de la base ou dune partie de la base crer, ajouter, modier, . . . un grand nombre dentres de manire automatise
dn: uid=toto, ou=People, dc=labri, dc=fr top account posixAccount shadowAccount objectClass: objectClass: objectClass: objectClass: uid: toto 44321 200 /home/toto uidNumber: gidNumber: cn:
/bin/bash
Cours 7 : LDAP 17
A. Guermouche
Protocole LDAP
Le modle fonctionnel
Il dcrit le moyen daccder aux donnes (syntaxe des requtes) et les requtes que lon peut leur appliquer. Rappel des oprations de consultation/mise--jour oprations dinterrogation : recherche (search) et comparaison (compare) dentres oprations de mise--jour des entres de lannuaire : add, delete, modify, rename Il ny a pas dopration de lecture dune entre pour connatre le contenu dune entre, il est ncessaire dcrire une requte qui pointe sur cette entre.
A. Guermouche
Cours 7 : LDAP
18
Protocole LDAP
Le modle de rplication
Il dnit comment dupliquer lannuaire sur plusieurs serveurs. amliorer le temps de rponse tre tolrant aux pannes Deux types de serveurs LDAP supplier server: fournit les donnes consumer server: reoit les donnes du matre Possibilit de partitionner lannuaire (clatement sur plusieurs serveurs) liens virtuels entre les diffrentes partitions (referral service)
A. Guermouche
Cours 7 : LDAP
19
Protocole LDAP
Le modle de scurit
Authentication pour se connecter au service Anonymous authentication, Root DN/passwd authentication (administrateur), User DN/passwd Contrle de laccs aux donnes droits daccs aux donnes (fonctions de lutilisateur authenti) rgles dnies sous forme dACL (Access Control List) au niveau du sommet dun sous-arbre ou dune entre. Chiffrement des transactions (LDAP+SSL, . . . )
A. Guermouche
Cours 7 : LDAP
20
LDAP en pratique
Plan
A. Guermouche
Cours 7 : LDAP
21
LDAP en pratique
Il faut bien choisir les schmas Quelles informations veut-on stocker dans lannuaire? Quelles sont les applications qui vont utiliser lannuaire? Il faut rchir a lorganisation du DIT impact sur la performance, les droits daccs, . . . Puis dans un deuxime temps gestion centralise sur un seul serveur? nombre de serveurs redondants? Emplacement?
A. Guermouche
Cours 7 : LDAP
22
LDAP en pratique
OpenLDAP
Logiciel LDAP du domaine public le dmon slapd traite les requtes LDAP le dmon slurpd permet la rplication des librairies LDAP
par exemple pour authentier les logins via LDAP : libpamldap, libnssldap
des utilitaires :
ldapadd, ldapdelete, ldapmodify, ldapmodrdn, ldappasswd, ldapsearch
A. Guermouche
Cours 7 : LDAP
23
LDAP en pratique
A. Guermouche
Cours 7 : LDAP
24
LDAP en pratique
A. Guermouche
Cours 7 : LDAP
25
LDAP en pratique
La conguration se fait grce au chier /etc/ldap/ldap.conf man ldap.conf peut aussi se faire dans /.ldaprc exemple de chier ldap.conf
# base par dfaut contacter pour les oprations LDAP BASE dc=labri, dc=fr # en tant que qui le client va se connecter # la base BINDDN uid=toto,ou=People,dc=labri,dc=fr # le serveur auquel se connecter URI ldap://147.210.20.21:389/
A. Guermouche
Cours 7 : LDAP
26
LDAP en pratique
Congurer laccs la base dans /etc/libnss-ldap.conf et /etc/pam_ldap.conf (voir pages man) Indiquer dans /etc/nsswitch.conf lordre dinterrogation pour lauthentication toujours laisser files en premier !
A. Guermouche
Cours 7 : LDAP
27