Outils pour utilisateurs

Outils du site


ldap

les annuaires ldap

remarque : cette page est inspirée d'une documentation du CNRS


qu'est-ce qu'un annuaire électronique

C'est un catalogue, dans lequel on peut mettre ce que l'on veut (téléphone, adresses, photos, …), pour le partager. En fait, ça ressemble beaucoup a une base de données, avec quelques différences notables :

  • il est conçu pour avoir beaucoup de requêtes en lecture, peu en écriture
  • pas de requêtes compliquées (comme les jointures en sql)
  • serveur réseau
  • protocole simple, léger et standardise : ldap ( lightweight directory access protocol), dérivé de X500

à quoi ça sert

  • à chercher des informations
  • pour des humains ou des applications
  • à gérer une base de données simple

historique

  • base de compte multi-utilisateurs : /etc/passwd /etc/hosts (1970-1980)
  • NIS (1980 ?) : pour de petites configurations
  • DNS (1984) : spécifique aux nommage ip
  • X500 (1988) : très lourd, clients bugués, basé sur l'ISO (et non pas TCP/IP)
  • ldap (1993)

concepts

ldap définit :


implémentation

il y a des solutions commerciales :

  • netscape directory server
  • Sun microsystem directory service
  • IBM, Innosoft …

et une solution libre :


protocole

  • ldap v3
  • port 389 ou 636 (ldap sur ssl)
  • connexion, commandes, déconnexion
  • conçu pour être extensible

modèle d'information

définit le type des données stockées

  • élément de base : objet
  • les informations sont représentées sous forme d'attributs
  • ldap propose un certain nombre de classes prédéfinies
  • les classes sont facilement extensibles par héritage
  • le schéma décrit les classes d'objets, les types des attributs et leur caractéristiques

modéle de nommage

définit comment sont organisée les entrées, et comment elles sont référencées

  • les entrées représentent des objets
  • l'organisation est hiérarchique, mais libre (a plat, par localisation, par service, par type …)
  • une entrée est identifiée par un “dn” (distinguish name), qui doit être unique, et qui est formé de la suite des noeuds traversés
  • recommandation : coller a la structure du DNS, avec l'attribut “dc”
  • les alias et les referral : permet de pointer vers une autre entrée d'annuaire (délégation)

modèle fonctionnel

décrit le moyen d'accéder aux données et les opérations qu'on peut leur appliquer

  • authentification
  • interrogation
  • comparaison
  • mise a jour (add, delete, rename, modify)

modèle de sécurité

  • authentification pour accéder au service
  • modèle de contrôle d'accès aux données par des ACL sur des nœuds de l'arborescence
    • quoi : ou s'applique la règle
    • qui : a qui ça s'applique
    • comment : read, write, search, add, delete, compare …
  • chiffrement des transactions entre clients et serveurs

modèle de duplication

permet de dupliquer un dupliquer un annuaire sur plusieurs serveurs :

  • garantit la qualité de service : temps de réponse et sûreté de fonctionnement
  • répartition de charge
  • un maître, des esclaves
  • synchronisation totale/incrémentale, temps réel/différé

programmation

il y a des api pour les langages :

  • C
  • perl (package perl_ldap ou perl-URI)
  • python
  • java
  • php

format d'échange : ldif

permet :

  • des imports/export d'annuaire
  • des modifications

en format ASCII/base 64, maintenant en UTF8


interface graphiques

via un navigateur :

via un client spécialisé


applications

  • windows 2000 et suivants (XP, vista, 2003 …) : active directory
  • mozilla/outlook : carnet d'adresse centralise
  • gestion centralisée de l'authentification et des droits d'accès (mot de passe unique UNIX/Windows) : pam_ldap
  • gestion de parc informatique
  • serveurs de mail (sendmail, postfix ) et de mailing listes (sympa)
  • annuaire du personnel, téléphonique
  • stockage de clef publiques
  • DNS : remplacement de bind, ou redirection (v9) vers un ldap
  • services divers : samba, squid (squid_pam_auth), dhcp, pppd, horde
  • clients divers : pine, evolution, openoffice, ils (telephone sur ip) …

documentation

  1. cru : une présentation trés complète
  2. ldapv3 : un bon panorama des utilisations
  3. pour démarrer (en anglais)
  4. portail consacre aux annuaires

eric gerbier 2009/09/16 16:14

ldap.txt · Dernière modification: 2012/02/05 16:43 (modification externe)