ldap_compare

(PHP 4 >= 4.0.2, PHP 5, PHP 7)

ldap_compareComparar el valor del atributo encontrado en la entrada que se especificó con un DN

Descripción

ldap_compare ( resource $link_identifier , string $dn , string $attribute , string $value ) : mixed

Comparar el value del attribute con el valor del mismo atributo en una entrada del directorio de LDAP.

Parámetros

link_identifier

Un enlace identificador de LDAP, devuelto por ldap_connect().

dn

El nombre distinguido de una entidad de LDAP.

attribute

El nombre del atributo.

value

El valor comparado.

Valores devueltos

Devuelve TRUE si value es similar de otra forma devuelve FALSE. Devuelve -1 en caso de error.

Ejemplos

El siguiente ejemplo demuestra como revisar si una contraseña proporcionada es igual o no a la que está definida en una entrada DN específica.

Ejemplo #1 Ejemplo completo de revisión de contraseña

<?php

$ds
=ldap_connect("localhost");  // Asumiendo que el servidor de LDAP está en este mismo ordenador

if ($ds) {

    
// enlazar
    
if (ldap_bind($ds)) {

        
// preparar los datos
        
$dn "cn=Matti Meikku, ou=Mi Departamento, o=Mi Compañía, c=FI";
        
$value "contraseñasecreta";
        
$attr "contraseña";

        
// comparar el valor
        
$r=ldap_compare($ds$dn$attr$value);

        if (
$r === -1) {
            echo 
"Error: " ldap_error($ds);
        } elseif (
$r === true) {
            echo 
"Contraseña correcta.";
        } elseif (
$r === false) {
            echo 
"Supongo que falló! Contraseña incorrecta.";
        }

    } else {
        echo 
"No se puede enlazar al servidor de LDAP.";
    }

    
ldap_close($ds);

} else {
    echo 
"No se puede conectar al servidor de LDAP.";
}
?>

Notas

Advertencia

ldap_compare() NO puede ser utilizado para comparar valores BINARIOS!