Files
klesia_ldap/doc.md
2019-10-24 22:20:31 +02:00

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