Foros del Web » Programando para Internet » PHP »

PHP LDAP en linux busqueda en ActiveDirectory de Windows

Estas en el tema de PHP LDAP en linux busqueda en ActiveDirectory de Windows en el foro de PHP en Foros del Web. Hola Compañeros. Tengo problema con un simple script de busqueda de LDAP de PHP. Nuestra estructura de directorio es la siguiente dominio.com los usuario pueden ...
  #1 (permalink)  
Antiguo 28/08/2009, 07:14
Avatar de lcervantes  
Fecha de Ingreso: abril-2002
Mensajes: 137
Antigüedad: 22 años, 7 meses
Puntos: 0
De acuerdo PHP LDAP en linux busqueda en ActiveDirectory de Windows

Hola Compañeros.
Tengo problema con un simple script de busqueda de LDAP de PHP.
Nuestra estructura de directorio es la siguiente
dominio.com
los usuario pueden estar destinados a unidades organizativas diferentes que las administra dominio\Administrador.
Pero tambien hay otras unidades organizativas administradas por otras administradores de esas unidades administrativas.

dc=dominio,dc=com
+++dc=SUBDOMINO1
+++---OU=DOM1
+++dc=SUBDOMINO2
+++--- OU=DOM2
+++OU=DOMINIO
+++--- OU=GRUPO

Tenemos usuario creados en DOM1, DOM2 y GRUPO

Estoy buscando al nombre de usuario : pedro.hernandez que esta en DOM2

Código PHP:
        $ldaphost "ldap://server.dominio.com";
        
$ldapport 3268;
        
$ds ldap_connect($ldaphost$ldapport) or die("Could not connect to $ldaphost");
if (
$ds) {
        
$username "dominio\Administrador";
        
$upasswd "password";
        
$binddn "dc=dominio,dc=com";
        
$ldapbind ldap_bind($ds$username$upasswd);
        if (
$ldapbind) {
                print 
"Congratulations! $some_user is authenticated.";
                
$filter "(&(samaccountname=pedro.hernandez) (objectClass=user)(objectCategory=person) )";
                
$fields = array("name","description","samaccountname");
                
$sr=ldap_search($ds$binddn$filter,$fields);
                
$info ldap_get_entries($ds$sr);
                echo 
"<br>------<br>";
                
print_r($info);
                echo 
"<br>------<br>";
        }else {
                print 
"Nice try, kid. Better luck next time!";
        }

Esto si lo corro en un servidor web windows funciona me encuentra cualquier usuario en cualquier DOM1, DOM2, GRUPO

Si lo subo a un servidor linux1 que tenemos de producción funciona.

Pero en el servidor linux2 de desarrollo no va.
Bueno solo encuentra los usuarios que estan en GRUPO pero el resto no.
Puede ser que el problema sea de permisos. Ya que los usuarios que se dan en DOM1, y DOM2 los dan de alta los administradores de esos subdominios y no el administrador global dominio\Administrador

Pero lo raro es que en el servidor linux1 y en el servidor windows funciona.
Pero en el de desarrollo no va.

Es posible que sea un problema de instalación. He comparado entre los 2 linux y no encuentro la diferencia entre los software instalados.
Alguien me puede dar una ayuda.? Alguna idea si se ha de tocar algun fichero de configuración del linux o instalar algun modulo o componente para que se comporte bien.

Linux 1. Servidor web Http (de repositorio), PHP 5.2.9 (compilado)
Linux 2 Sevridor Web Http (de repositorio), PHP 5.2.9 (de repositorio)

Muchas gracias por vuestra ayuda.
Saludos,
__________________
LCervantes
--------------------------------------------
www.nerrots.es
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:04.