Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/08/2016, 13:18
VR1387
 
Fecha de Ingreso: abril-2016
Mensajes: 19
Antigüedad: 8 años, 1 mes
Puntos: 0
PHP con autenticancion LDAP

Buenas gente consegui este codigo en internet y lo modique a lo que tengo yo.

Código:
<?php
define('DOMINIO', 'dominio.local);
define('DN', 'dc=dominiodc=local');
define('USER', 'perez');
$usuario = USER;

 
        //Asigno variables para accesar al servidor LDAP
    $host = "dominio.local";
    $user = "DOMINIO\Administrator";
    $pswd = "12345678";
	$port = "389";
 
 
    $ad = ldap_connect($host, $port)
    or die("Imposible Conectar");
 
    // Especifico la versión del protocolo LDAP
    ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3)
    or die ("Imposible asignar el Protocolo LDAP");
 
    // Valido las credenciales para accesar al servidor LDAP
    $bd = ldap_bind($ad, $user, $pswd)
    or die ("Imposible Validar en el Servidor LDAP");
 
    // Creo el DN
    $dn = DN;
 
    // Especifico los parámetros que quiero que me regrese la consulta
    $attrs = array("samaccountname","givenname");
 
    // Creo el filtro para la busqueda
 /*   $filter = "(samaccountname=$usuario)";*/
	$filter="(|(SAMAccountName=".trim($usuario)."))"; 
 
    $search = ldap_search($ad, $dn, $filter, $attrs)
    or die ("");
 
    $entries = ldap_get_entries($ad, $search);
 
    if ($entries["count"] > 0)
        {
        for ($i=0; $i<$entries["count"]; $i++)
                {
            echo "<p>Nombre: ".$entries[$i]["displayname"][0]."<br />";
            echo "Nombre de Usuario: ".$entries[$i]["samaccountname"][0]."<br />";
			echo "Nombre de Usuario: ".$entries[$i]["givenname"][0]."<br />";
            
            }
    } else {
        echo "<p>No se ha encontrado ningun resultado</p>";
    }
    ldap_unbind($ad);
?>
Todo corre perfectametne segun yo. Excepto el for que no hace nada ni siquiera el echo del else se muestra.

Si me pudieran ayudar.