« LDAP » : différence entre les versions

m Ajout d'un point médian
m Typo
 
(7 versions intermédiaires par la même utilisatrice non affichées)
Ligne 15 : Ligne 15 :
L'utilitaire <code>ldapsearch</code>, disponible dans le paquet <code>ldap-utils</code> sous Debian/Ubuntu et <code>openldap</code> sous Archlinux/dans les nixpkgs permet d'effectuer des requêtes sur la base de données du serveur.
L'utilitaire <code>ldapsearch</code>, disponible dans le paquet <code>ldap-utils</code> sous Debian/Ubuntu et <code>openldap</code> sous Archlinux/dans les nixpkgs permet d'effectuer des requêtes sur la base de données du serveur.


'''Note :''' En raison des problèmes de vie privée engendrée par certains champs du ''LDAP'', les informations stoquées sur cet annuaire ont été diminuées. Les requêtes ci-dessous ne fonctionneront donc plus, mais sont conservées sur le wiki à titre historique.
===== Récupérer le numéro INE d'un·e utilisateurice (ou tout autre champs) =====
 
===== Récupérer le numéro INE d'un utilisateur (ou tout autre champs) =====


Si vous souhaitez récupérer le numéro ''INE'' de l'utilisateur ''Jean Dupont'', de nom d'utilisateur ''jdupont'', il suffit de taper la commande suivante:
Si vous souhaitez récupérer le numéro ''INE'' de l'utilisateur ''Jean Dupont'', de nom d'utilisateur ''jdupont'', il suffit de taper la commande suivante:


<code>ldapsearch -xLLL -H ldap://ldap.ens-lyon.fr -b 'ou=people,dc=ens-lyon,dc=fr' uid=jdupont supannCodeINE</code>
<pre>
ldapsearch -xLLL -H ldap://ldap.ens-lyon.fr -b 'ou=people,dc=ens-lyon,dc=fr' uid=jdupont supannCodeINE
</pre>


Pour un champ quelconque, il suffit de remplacer <code>supannCodeINE</code> par le champ voulu.
Pour un champ quelconque, il suffit de remplacer <code>supannCodeINE</code> par le champ voulu.


Par exemple, pour savoir à qui appartient un numéro INE, on peut exécuter la commande suivante, qui recherche la valeur du champ `displayName` associée à une valeur du champ `supannCodeINE`:
Par exemple, pour savoir à qui appartient un numéro INE, on peut exécuter la commande suivante, qui recherche la valeur du champ <code>displayName</code> associée à une valeur du champ <code>supannCodeINE</code>:


<code>ldapsearch -xLLL -H ldap://ldap.ens-lyon.fr -b 'ou=people,dc=ens-lyon,dc=fr' supannCodeINE=040…F displayName</code>
<pre>
ldapsearch -xLLL -H ldap://ldap.ens-lyon.fr -b 'ou=people,dc=ens-lyon,dc=fr' supannCodeINE=040…F displayName
</pre>


==== Effectuer des requêtes complexes ====
==== Effectuer des requêtes complexes ====


Il est possible d'utiliser à son avantage wildcard (\*) et opérateurs logiques. Par exemple, la commande suivante renvoie l'ensemble des <code>uid</code> des personnes étant inscrites en L3 au département d'informatique de l'ENS de Lyon et n'habitant pas à la résidence Debourg:
Il est possible d'utiliser à son avantage wildcard (<code>*</code>) et opérateurs logiques. Par exemple, la commande suivante renvoie l'ensemble des <code>uid</code> des personnes étant inscrites en L3 au département d'informatique de l'ENS de Lyon et n'habitant pas à la résidence Debourg :
 
<pre>
ldapsearch -xLLL -H ldap://ldap.ens-lyon.fr -b 'ou=people,dc=ens-lyon,dc=fr' '(&amp;(supannEtuInscription=[anneeinsc=2016]*[cursusann={SUPANN}L3]*[affect=DPT INFORMATIQUE])(!(enslPersonHebergement=RESIDENCE_DEBOURG)))' uid
</pre>
 
 
'''Note :''' En raison des problèmes de vie privée engendrée par certains champs du ''LDAP'', les informations stockées sur cet annuaire ont été diminuées. La requête ci-dessus ne fonctionnera donc plus, mais est conservée sur le wiki à titre historique et d'exemple.


<code>ldapsearch -xLLL -H ldap://ldap.ens-lyon.fr -b 'ou=people,dc=ens-lyon,dc=fr' '(&amp;(supannEtuInscription=[anneeinsc=2016]\*[cursusann={SUPANN}L3]\*[affect=DPT INFORMATIQUE])(!(enslPersonHebergement=RESIDENCE_DEBOURG)))' uid</code>


[[Catégorie:Service ENS]]
[[Catégorie:Service ENS]]