79 lines
2.4 KiB
Markdown
79 lines
2.4 KiB
Markdown
##### Documentation
|
|
|
|
#### Prérequis
|
|
|
|
les scripts mis au point nécessite un interpréteur perl et les blibiothèques
|
|
Net::LDAP ( paquet perl-LDAP sur RHEL / CentOS ) et Text::CSV ( paquet
|
|
perl-Text-CSV )
|
|
|
|
#### Fichiers csv en entrée
|
|
|
|
Ceci doivent être correctement encodés en UTF8
|
|
|
|
#### Définition des nouveaux attributs
|
|
|
|
Avant de pouvoir ajouter les nouveaux attributs aux objets ldap existants, il
|
|
faut rajouter leur définition auprès du serveur LDAP.
|
|
|
|
Il faut copier le fichier dans le sous -répertoire schema du répertoire
|
|
d'installation ldap et relancer le service
|
|
|
|
Il faut ensuite rajouter l'attribut objectClass avec la valeur klesiaentreprise
|
|
à tous les objets à qui on souhaite ajouter les attributs.
|
|
|
|
#### Script 1 : add_attributes.pl
|
|
|
|
Ce script est responsable de l'ajout de la classe d'objet décrit ci-dessus d'une
|
|
part, et de l'ajout des attributs supplémentaires d'autre part.
|
|
|
|
À noter les paramètres de connexion et d'authentification en début de fichier. (
|
|
$ldapserver, $binddn et $bindpw).
|
|
|
|
Il attend en entrée un fichier csv ayant la structure suivante:
|
|
dn de l'entrée à modifier
|
|
nom attribut 1
|
|
valeur attribut 1
|
|
...
|
|
nom attribut n
|
|
valeur attribut n
|
|
|
|
Chaque champ étant séparé par un ;
|
|
|
|
Le nom du fichier doit être "entreprise" ou "particulier", il conditionne la
|
|
branche sur laquelle le script va travailler.
|
|
|
|
Pour chaque ligne du fichier csv:
|
|
- vérification de la présence de l'attribut objectClass=klesiaEntreprise
|
|
- rajout de cet attribut le cas échéant.
|
|
- pour chaque attribut:
|
|
- mise à jour de l'attribut avec la valeur correspondante
|
|
|
|
Ex d'utilisation
|
|
```
|
|
perl add_attribute.pl entreprises.csv
|
|
```
|
|
|
|
#### Script 2 : password.pl
|
|
|
|
Ce script va modifier toutes les entrées d'une branche ldap donnée ayant un
|
|
attribut **userPassword** non déjà hashé.
|
|
|
|
Il prend en entrée le dn de la branche à modifier.
|
|
|
|
À noter les paramètres de connexion et d'authentification en début de fichier. (
|
|
$ldapserver, $binddn et $bindpw).
|
|
|
|
Ex d'utilisation:
|
|
```
|
|
perl password.pl ou=PeopleEnt,o=od
|
|
```
|
|
|
|
#### Exemple d'utilisation complet:
|
|
|
|
* adapter les informations d'authentification dans les 2 scripts.
|
|
* copier le fichier schema et relancer le serveur ldap
|
|
* exécuter perl add_attribute.pl entreprises.csv
|
|
* exécuter perl add_attribute.pl particuluers.csv
|
|
* perl password.pl PeopleEnt,dc=rec,dc=ldap,dc=klesia,dc=fr
|
|
* perl password.pl people,dc=rec,dc=ldap,dc=klesia,dc=fr
|