Page 1 sur 3
[Corrigé 3.2.8] Problème synchronisation AD
Posté : jeu. 14 janv. 2021 10:58
par fabrice
Bonjour la synchronisation Active directory me recréer les utilisateurs à chaque synchronisation sans prendre en compte qu'ils existent déjà
merci
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:04
par Flox
Bonjour,
je ne reproduis pas le soucis de mon côté, pouvez-vous activer temporairement le mode debug de l'application puis transmettre un impression écran d'une simulation de synchronisation en MP.
Merci également d'indiquer si le problème était observé dans la version 3.2.6 ?
Cdt
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:09
par fabrice
je vous ai envoyé le debug par MP
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:11
par Flox
J'ai réussi à reproduire le problème avec votre version de PHP.
Pourrez-vous tester le patch en pièce jointe ?
Pour installer ce patch : extraire le contenu du fichier compressé à la racine de votre serveur en écrasant les fichiers
Cdt
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:12
par fabrice
je ne trouve pas de patch
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:13
par Flox
le patch en pièce jointe ci-dessus
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:21
par fabrice
Ça a l'air fonctionnel mais j'ai toujours mes utilisateurs en 7 fois
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:28
par fabrice
est-ce qu'on peut résoudre ça avec une requêtes sql ?
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:29
par Flox
Je travaille sur cette dernière et reviens vers vous.
Re: probleme synchronisation AD
Posté : jeu. 14 janv. 2021 11:34
par Flox
Pour la supression des doublons faites une sauvegarde la base de données via PhpMyAdmin puis :
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