3.0.5 - LDAP

Vous avez trouvé un bug dans l'application (dernière version stable ou bêta): Décrivez le ici afin que la correction soit intégrée a la prochaine version.
Répondre
jbongran
Gsup LEVEL 1
Messages : 18
Enregistré le : sam. 18 janv. 2014 14:15

Bonjour,
Si on veut pouvoir 'taper' le root dn, c'est à dire sans donner de container ou d'UO où se trouvent les utilisateurs, il faut modifier core/ldap.php comme suit:

Code : Tout sélectionner

//Generate DC Chain from domain parameter
$dcpart=explode(".",$domain);
$i=0;
$sep="";
while($i<count($dcpart)) {
        $dcgen=$dcgen . $sep . "dc=" . $dcpart[$i];
        $sep=",";
        $i++;
}

//LDAP URL for users emplacement
$ldap_url = "$rparameters[ldap_url]";
if ($ldap_url != '') {$ldap_url.=$dcgen;} else {$ldap_url = $dcgen;}
Egalement, Active Directory supportant le protocole version 3 depuis Windows 2000, il serait judicieux de modifier la ligne:

Code : Tout sélectionner

if ($rparameters['ldap_type']==1) {ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);}
en

Code : Tout sélectionner

ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
Un énorme avantage, maintenant que la version 3 de gestsup est en UTF-8 est que l'on peut enlever les utf_decode pour afficher les caractères accentués provenant du LDAP.

Cordialement
Avatar du membre
Flox
Administrateur du site
Messages : 9210
Enregistré le : jeu. 21 juin 2012 19:00

Bonjour,

en fait pour le ldap type il s'agit d'une option de compatibilité pour OpenLDAP.
GestSup: 3.2.47 | Debian: 12 | Apache: 2.4.59 | MariaDB: 11.4.2 | PHP: 8.3.8 | https://doc.gestsup.fr/
sb1623
Gsup LEVEL 0
Messages : 3
Enregistré le : ven. 26 déc. 2014 16:20

Bonjour,

Nous avons installé la 3.0.10 et nous tentons "d'attaquer' nous aussi le root dn.
Sur l'AD, avec WireShark, nous voyons bien GestSup parcourir une partie de l'arborescence mais il ne semble pas trouver les users.
Pourriez-vous nous indiquer le paramétrage nécessaire pour que ça fonctionne.
Nous avons fait la modif citée plus haut...

Sébastien
Version 3.0.10 sur Ubuntu 14.04
eyd3n
Gsup LEVEL 0
Messages : 2
Enregistré le : mar. 3 févr. 2015 15:55

Même problème que Sébastien, impossible de répertorier les utilisateurs en partant du root dn, même avec les modifications proposées par jbongran.

Une solution ?
eyd3n
Gsup LEVEL 0
Messages : 2
Enregistré le : mar. 3 févr. 2015 15:55

J'ai un peu progressé. Je peux maintenant taper dans le root DN. Le problème est que dans mon filter, j'ai :

- $filter="(objectClass=user)"; qui me liste l'ensemble des utilisateurs ET des ordinateurs.

- $filter="(&(objectClass=user)(objectCategory=person))"; qui me liste rien du tout.
- $filter="(&(objectClass=user)(objectCategory=user))"; qui me liste rien du tout.
- $filter="(&(objectClass=user)(objectCategory=person)(cn=*))"; qui me liste rien du tout.
- $filter="(&(objectClass=user)(objectCategory=user)(cn=*))"; qui me liste rien du tout.
- $filter="(&(objectClass=user)(!(objectCategory=computer)))"; qui me liste rien du tout.


Or, dans un lanceur de requêtes LDAP comme "LEX", ces filtres fonctionnent.

Quelqu'un a des idées ?
Répondre