Forum Linux.général ldap trouver le guid max dans l'annuaire (résolu)

Posté par  . Licence CC By‑SA.
Étiquettes :
0
16
nov.
2018

Bonjour tout le monde,

je souhaiterai afficher la valeur maximum d'un guid concernant les groupes ldap d'un OU spécifique.

Le but est d'automatiser la création de groupe. Il y a l'existant donc je dois m'adaper.

En effet j'ai une solution palliative qui consiste de créer un groupe avec la méthode que nous appliquons dans la sociéte puis je récupère le guid et à partir de cela je créer un groupe fictif qui servira de référent dans lequel sera positionné le dernier guid utilisé en commentaire pour chaque création (pour gérer l'auto-incrémentation du guid une fois positionné correctement).

Le site suivant explique parfaitement cette solution.

Mais l'idée et de voir si il est possible de réaliser la prémière méthode.

Si l'un de vous a une idée…

Version de ldapsearch + ldap=2.4

  • # bourrin

    Posté par  (site web personnel) . Évalué à 1.

    Tu interroge ton ldap sur ton OU, avec filter=* et l'attribut (gidNumber) que tu recherche : tu obtiens une liste.

    plus_grand_gidNumber = max(liste)

    Si ton ldap contient 100k entry dans cette OU, c'est… bourrin. Mais c'est simple.

    Proverbe Alien : Sauvez la terre ? Mangez des humains !

    • [^] # Re: bourrin (résolu)

      Posté par  . Évalué à 1. Dernière modification le 20 novembre 2018 à 15:02.

      Merci

      C'était ce que j'avais avant de poster ma solution

      Voici la commande

      ldapsearch -x -H ldap://mondomaine.fr -x -D "cn=Manager,dc=mondomain,dc=fr" -wmypassword "(cn=*)" | grep gidNumber | cut -d : -f2 | sort -n | awk 'END{print $NF}'

      j'obtiens la valeur max puis dans mon script je l'incrémente de +1.

      • [^] # Re: bourrin (résolu)

        Posté par  . Évalué à 2.

        vire le grep, tu gagnes un peu de temps d'execution

        ldapsearch -x -H ldap://mondomaine.fr -x -D "cn=Manager,dc=mondomain,dc=fr" -wmypassword "(cn=*)" gidNumber | cut -d : -f2 | sort -n | awk 'END{print $NF}'

        ca devrait te donner uniquement la liste des gidNumber plutot que l'ensemble des données que tu filtres ensuite.

        vire le cut pour ne garder que le sort -nk2 qui va trier sur la 2e colonne tes données
        gidNumber: xxxxx

        et peut-etre que le awk peut etre remplacer par un tail -n1
        mais je ne sais pas lequel de awk ou tail est le plus rapide

        ldapsearch -x -H ldap://mondomaine.fr -x -D "cn=Manager,dc=mondomain,dc=fr" -wmypassword "(cn=*)" gidNumber | sort -nk2 | tail -n1
        • [^] # Re: bourrin (résolu)

          Posté par  . Évalué à 3.

          mais je ne sais pas lequel de awk ou tail est le plus rapide

          à vue de nez, je dirais que c'est pas awk, mais faudrait mesurer.

          ou l'option -r de sort redirigé dans un head -n1 ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.