Por lo visto no hay muchas personas que me puedan ayudar con este tema.
Seguí en mi búsqueda y logre, al menos, detectar un usuario que sí posee permisos para realizar búsquedas en LDAP.
Ahora lo que me ocurre es que no me autentica como es debido, si realizo la comparación (ldap_compare) se pasa por alto la validación;y si realizo la búsqueda (ldap_search) no me devuelve ningún resultado, es decir, un array de atributos vacío.
He comprobado cada uno de los atributos, y están bien... no entiendo porque no me hace el filtro correspondiente:
Código PHP:
function getAllInfoLDAP($username,$ldapconn){
$dn[]="OU=Users,DC=intra";
$valor = "TP\\$username";
$atributo = "samaccountname";
$r=ldap_compare($ldapconn, $dn, $atributo, $valor);
return $r;
}
function LDAP($userActual,$password,$username){
$ldapconn = conectarLDAP();
$ldaprdn = "TP\$userActual";
$ldappass = $password;
$ldapbind = autenticarLDAP($ldapconn[0], $ldaprdn, $ldappass);
$ldapbind2 = autenticarLDAP($ldapconn[1], $ldaprdn, $ldappass);
if(!$ldapbind || !$ldapbind2){
$f= getAllInfoLDAP($username,$ldapconn);
if ($f == 0) {
desconectarLDAP($ldapconn[0]);
desconectarLDAP($ldapconn[1]);
return '0';
} else {
desconectarLDAP($ldapconn[0]);
desconectarLDAP($ldapconn[1]);
return '2';
}
} else {
desconectarLDAP($ldapconn[0]);
desconectarLDAP($ldapconn[1]);
return '2';
}
return $f;
}