Utilisateurs en double (synchro LDAP)

Installation & Configuration du logiciel
Répondre
okba6z
Gsup LEVEL 3
Messages : 88
Enregistré le : ven. 14 déc. 2018 16:38

Bonjour,
C'est normal que après une synchronisation AD, j'ai des utilisateurs en double?
Voir pièce jointe.

De même lorsque je veux changer le profil d'un utilisateur qui existe en double, bah j'ai un message d'erreur:

Code : Tout sélectionner

Erreur: Un autre compte utilise déjà cet identifiant.
Donc impossible de changer le profil.
Comment nettoyer les doublons?
Nombre d'utilisateurs trouvés dans l'annuaire Active Directory : 1003
Nombre d'utilisateurs actif trouvés dans GestSup : 1820


Merci à vous
Fichiers joints
double.JPG
double.JPG (57.11 Kio) Vu 8023 fois
GestSup : 3.1.47 | Debian: 9.8 | NGINX & MARIADB
Avatar du membre
Flox
Administrateur du site
Messages : 9026
Enregistré le : jeu. 21 juin 2012 19:00

Bonjour pouvez vous nous indiquer votre version de l'application ? Et nous transmettre un impression écran de votre page système et paramètre du connecteur LDAP.

Cdt
GestSup: 3.2.47 | Debian: 12 | Apache: 2.4.58 | MariaDB: 11.3.2 | PHP: 8.3.6 | https://doc.gestsup.fr/
okba6z
Gsup LEVEL 3
Messages : 88
Enregistré le : ven. 14 déc. 2018 16:38

Bonjour,

Merci de votre réponse, version 3.1.37 (Version 3.1 avec patch 37)
Fichiers joints
systeme.JPG
systeme.JPG (99.56 Kio) Vu 8019 fois
ldap.JPG
ldap.JPG (42.18 Kio) Vu 8019 fois
GestSup : 3.1.47 | Debian: 9.8 | NGINX & MARIADB
Avatar du membre
Flox
Administrateur du site
Messages : 9026
Enregistré le : jeu. 21 juin 2012 19:00

Je ne reproduis pas l'anomalie de mon coté,
1- pouvez indiquer si avant la synchronisation il existai déja un compte pour ces users ?
2- Pouvez vous préciser si le connecteur fonctionnai avant, ou si il s'agit de sa mise en place ?
3- Si le problème de doublons s'est produit sur tous les users ou sur quelques uns ?
4- Préciser la version de Windows sur votre DC ?
GestSup: 3.2.47 | Debian: 12 | Apache: 2.4.58 | MariaDB: 11.3.2 | PHP: 8.3.6 | https://doc.gestsup.fr/
Avatar du membre
Flox
Administrateur du site
Messages : 9026
Enregistré le : jeu. 21 juin 2012 19:00

Pour l'élimination des doublons vous pourrez les lister avec cette requête:

Code : Tout sélectionner

SELECT COUNT(*) AS doublons, login
FROM tusers
WHERE login!=''
GROUP BY login
HAVING COUNT(*) > 1
et les supprimer avec cette requête, l'identifiant le plus petit est conservé (faite une sauvegarde avant):

Code : Tout sélectionner

DELETE tusers 
FROM tusers
LEFT OUTER JOIN (
        SELECT MIN(id) as id, login
        FROM tusers
        WHERE login!=''
        GROUP BY login
    ) AS table_1 
    ON tusers.id = table_1.id
WHERE table_1.id IS NULL
GestSup: 3.2.47 | Debian: 12 | Apache: 2.4.58 | MariaDB: 11.3.2 | PHP: 8.3.6 | https://doc.gestsup.fr/
okba6z
Gsup LEVEL 3
Messages : 88
Enregistré le : ven. 14 déc. 2018 16:38

1- pouvez indiquer si avant la synchronisation il existai déja un compte pour ces users ?
En fait je crois savoir d’où vient le beug, j'avais activer la synchronisation des groupes de service LDAP en mettant la même OU que pour les utilisateurs...

2- Pouvez vous préciser si le connecteur fonctionnai avant, ou si il s'agit de sa mise en place ?
Oui il fonctionne parfaitement depuis le début

3- Si le problème de doublons s'est produit sur tous les users ou sur quelques uns ?
Bah il semblerait sur tous les utilisateurs que j'ai voulu regarder...

4- Préciser la version de Windows sur votre DC ?
Windows server 2012 r2
GestSup : 3.1.47 | Debian: 9.8 | NGINX & MARIADB
Avatar du membre
Flox
Administrateur du site
Messages : 9026
Enregistré le : jeu. 21 juin 2012 19:00

Bonjour, l'origine du problème viens donc de l'utilisation concomitante de la synchronisation et de la synchronisation des groupes de service.

Il faut utiliser l'une ou l'autre mais pas les deux en même temps.

Afin de supprimer les utilisateurs crée via l'option de synchronisation des groupes de services, vous pouvez tester la requête ci après, après une sauvegarde :

Code : Tout sélectionner

UPDATE tusers SET disable=1 WHERE ldap_guid!='';
GestSup: 3.2.47 | Debian: 12 | Apache: 2.4.58 | MariaDB: 11.3.2 | PHP: 8.3.6 | https://doc.gestsup.fr/
okba6z
Gsup LEVEL 3
Messages : 88
Enregistré le : ven. 14 déc. 2018 16:38

Flox a écrit : lun. 25 mars 2019 12:20 Pour l'élimination des doublons vous pourrez les lister avec cette requête:

Code : Tout sélectionner

SELECT COUNT(*) AS doublons, login
FROM tusers
WHERE login!=''
GROUP BY login
HAVING COUNT(*) > 1
et les supprimer avec cette requête, l'identifiant le plus petit est conservé (faite une sauvegarde avant):

Code : Tout sélectionner

DELETE tusers 
FROM tusers
LEFT OUTER JOIN (
        SELECT MIN(id) as id, login
        FROM tusers
        WHERE login!=''
        GROUP BY login
    ) AS table_1 
    ON tusers.id = table_1.id
WHERE table_1.id IS NULL

Pour sa parfait!



Dernière question, est-il possible de faire une tâche cron pour effectué une synchronisation LDAP automatique.
Car il arrive que des nouveaux utilisateurs crée des tickets mais si on a pas fait la synchronisation LDAP ils ne sont pas crée.
GestSup : 3.1.47 | Debian: 9.8 | NGINX & MARIADB
Avatar du membre
Flox
Administrateur du site
Messages : 9026
Enregistré le : jeu. 21 juin 2012 19:00

C'est tout a fait possible je vous invite a récupérer ma ligne de commande depuis la section documentation.

Cdt
GestSup: 3.2.47 | Debian: 12 | Apache: 2.4.58 | MariaDB: 11.3.2 | PHP: 8.3.6 | https://doc.gestsup.fr/
okba6z
Gsup LEVEL 3
Messages : 88
Enregistré le : ven. 14 déc. 2018 16:38

ok parfait!
merci beaucoup!
GestSup : 3.1.47 | Debian: 9.8 | NGINX & MARIADB
Répondre