> Tech > L’outil Directory Exchange LDIF

L’outil Directory Exchange LDIF

Tech - Par Randy Franklin Smith - Publié le 24 juin 2010
email

Pour tirer le maximum de vos données de répertoires

Et si je vous disais que Windows 2000 comporte un utilitaire capable d’importer et d’exporter facilement des enregistrements Active Directory à des fins de reporting et de migration ? Et si cet outil pouvait aussi ajouter, modifier ou supprimer des objets AD ? ...L’outil Lightweight Directory Access Protocol (LDAP) Data Interchange Format (LDIF) Directory Exchange, mieux connu sous le nom de ldifde, vous permet d’exporter des données à partir d’AD, objet par objet (utilisateur, groupe, par exemple) attribut par attribut (nom, société, département, par exemple) vers un fichier en format LDIF. LDIF est un format de fichier standard Internet fondé sur l’Internet Engineering Task Force (IETF) Request for Comments (RFC) 2849 pour importer et exporter des données à partir de répertoires LDAP comme AD. Après avoir exporté les données, vous pouvez utiliser le fichier LDIF pour importer les mêmes objets dans un répertoire LDAP différent. Ou bien, vous pouvez utiliser la sortie de Ldifde comme données brutes pour un rapport ou comme point de départ pour créer un fichier LDIF de changements à réimporter dans AD.
Voyons quelques exemples de fichiers LDIF pour que vous appreniez à utiliser Ldifde et son utilitaire frère, Csvde, pour tirer le maximum de vos données AD. Csvde est la version CSV (comma-separated value) de Ldifde qui vous permet d’importer des données dans des applications base de données comme Microsoft Access ou des applications tableur comme Microsoft Excel qui supportent des fichiers au format CSV. Ldifde et Csvde accompagnent Win2K Server, mais vous pouvez copier ces utilitaires à partir du CD-ROM d’installation Win2K Server et les exécuter sur des stations de travail Windows XP et Win2K.

Avant de commencer à  utiliser Ldifde,
vous devez comprendre la structure
de fichiers LDIF. On voit dans la figure
1 une OU (organizational unit) appelée
Monterey qui contient quatre utilisateurs
et un groupe. Pour exporter
cette information d’AD, il faut exécuter
la commande

ldifde -f monterey.ldif -d
« ou=Monterey,DC=ad,dc=local »



pour créer le fichier Monterey.ldif,
comme le montre la figure 1 Web
(http://www.itpro.fr Club Abonnés).
(Vous pouvez soit invoquer Ldifde à 
partir d’un script, soit lancer l’exécutable
à  partir de l’invite de commande.)
Le paramètre -f vous permet
d’indiquer le nom du fichier LDIF
(monterey.ldif, par exemple). Le paramètre
-d vous permet d’indiquer le
DN (distinguished name) racine du
domaine ou OU à  l’origine de l’exportation
(par exemple, l’OU Monterey
du domaine ad.local), puis envoie en
sortie tous les attributs pour tous les
objets à  partir de ce point vers le bas, y
compris l’OU. Sachez que certains attributs
peuvent être manquants (par
exemple, les numéros de téléphone
de certains utilisateurs) si ces attributs
sont facultatifs et n’existent pas tant qu’ils ne sont pas explicitement définis
sur chaque objet.
Comme le montre la figure 1 Web,
chaque enregistrement d’un fichier
LDIF commence par une ligne DN signalée
par dn:. Dans un répertoire
LDAP, le DN d’un objet identifie celui-ci
de manière unique pour tout le répertoire.
La deuxième ligne de la figure 1
Web commence par changetype:, qui
spécifie le type de changement que
Ldifde devrait exécuter sur l’objet identifié
par le DN. Tous les enregistrements
de Monterey.ldif ont un changetype
add. Chaque fois qu’on exporte
des enregistrements, Ldifde formate le
fichier de telle sorte qu’on puisse l’utiliser
pour importer ces enregistrements
dans un autre répertoire LDAP.
Après avoir spécifié le changetype,
Ldifde liste chaque attribut objet dans
le format suivant :

<attribute name>: <value>

On peut déterminer la classe de
chaque objet en notant l’attribut
objectClass. Monterey.ldif liste l’OU
suivie de trois utilisateurs, d’un groupe
et de l’utilisateur final.
Si vous devez exporter des données
AD (une liste de noms d’utilisateurs,
par exemple) à  des fins de reporting,
vous devez limiter la sortie de
Ldifde par des critères de sélection
(classe, par exemple) et préciser quels
attributs objet vous voulez exporter :
vous pouvez utiliser les paramètres -r
et -l pour accomplir les deux objectifs.
Le paramètre -r vous permet de spécifier
un filtre de recherche en syntaxe
LDAP dans lequel vous spécifiez un ou
plusieurs attributs et leurs valeurs souhaitées.
Par exemple, tapez

ldifde -r « (objectClass=User) »

pour exporter simplement les enregistrements
utilisateur. Ou bien, tapez

ldifde -r
« (&(objectClass=user)(sn=Smith)) »

pour exporter tous les utilisateurs dont
le nom est Smith.
Utilisez le paramètre -l suivi d’une
liste d’attributs délimitée par des virgules
pour préciser quels attributs
Ldifde sort pour chaque objet. Par
exemple, tapez

ldifde -l « displayName,
physicalDeliveryOfficeName »

pour sortir le nom display et le bureau
pour chaque utilisateur, comme le
montre la figure 2.
Si vous découvrez les requêtes
LDAP, reportez-vous à  l’encadré exclusif
Web « LDAP Filters » (http://www.itpro.
fr Club Abonnés) pour plus d’informations
sur la manière de
structurer les requêtes. Si vous n’êtes
pas sûrs du nom exact d’un attribut ou
du nom de classe que vous voulez filtrer,
vous pouvez utiliser le snap-in
MMC (Microsoft Management Console)
Active Directory Schema ou exporter
une OU qui contient l’objet avec lequel
vous devez travailler, puis
examiner le fichier LDIF. Si l’attribut en
question n’apparaît pas dans l’enregistrement
de cet objet, éditez simplement
l’objet dans AD, définissez une
valeur pour l’attribut, et exportez l’OU
à  nouveau. Par exemple, quand vous
éditez un objet utilisateur dans le snapin
MMC Active Directory Users and
Computers, vous voyez un champ
Office sur l’onglet General de l’utilisateur
comme le montre la figure 3. Pour
déterminer le nom d’attribut LDAP
pour ce champ dans AD, vous pouvez
entrer une valeur pour l’attribut Office,
puis utiliser Ldifde pour exporter l’objet. Le nom d’attribut LDAP apparaîtra
dans le fichier LDIF après le nom
d’attribut physicalDeliveryOfficeName.
Bien que le format de fichier LDIF
ne se prête pas à  importer des données
AD dans une base de données à  des
fins de requête ou de reporting,
Microsoft offre un autre utilitaire,
Csvde, qui accepte les mêmes paramètres
que Ldifde mais sort les données
en format CSV. Par exemple, l’exécution
de la commande

csvde -f monterey.LDID -d
« ou=Monterey,DC=ad,dc=local » -l
« displayName,physicalDeliveryOffice
Name » -r « (objectClass=User) »

produit les mêmes données que
Ldifde, mais chaque enregistrement
comprend désormais une ligne de valeurs
délimitées par des virgules,
comme le montre la figure 4. A noter
que la première ligne des fichiers générés
par Csvde liste les noms d’attributs,
que Access et Excel interprèteront
correctement comme des
en-têtes de colonnes.

Téléchargez cette ressource

Livre blanc Sécurité et Stockage des documents

Livre blanc Sécurité et Stockage des documents

Découvrez dans ce livre blanc Kyocera les outils logiciels qui permettent une approche holistique et efficace de la collecte, du stockage, de la gestion et de la sécurisation des documents en entreprise.

Tech - Par Randy Franklin Smith - Publié le 24 juin 2010