PHP.mk документација

ldap_compare

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.ldap-compare.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.ldap-compare.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
ldap_compare

Референца за `function.ldap-compare.php` со подобрена типографија и навигација.

function.ldap-compare.php

ldap_compare

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

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

= NULL

function ldap_compare(
         LDAP\Connection $ldap,
         string $dn,
         string $attribute,
         string $value,
         ?array $controls = null
): bool|int

Спореди value of attribute Спореди ја вредноста на атрибутот пронајден во записот специфициран со DN

Параметри

ldap

Еден LDAP\Connection инстанца, вратена од ldap_connect().

dn

. Може исто така да додава или отстранува атрибути.

attribute

Името на атрибутот.

value

со вредноста на истиот атрибут во записот во LDAP директориумот.

controls

Низа од LDAP контроли сега е nullable; претходно, стандардно беше

Вратени вредности

Патеката до PHP скриптата што треба да се провери. true if value Споредената вредност. falseсе совпаѓа инаку враќа

Дневник на промени

Верзија = NULL
8.1.0 На ldap параметарот очекува LDAP\Connection инстанца сега; претходно, валидна ldap link resource се очекуваше.
8.0.0 controls Пример #1 LDAP пребарување [].
7.3.0 Поддршка за controls added

Примери

. Враќа -1 при грешка.

Следниот пример покажува како да проверите дали даден пасворд се совпаѓа со оној дефиниран во записот специфициран со DN.

<?php

$ds
=ldap_connect("localhost"); // assuming the LDAP server is on this host

if ($ds) {

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

// prepare data
$dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
$value = "secretpassword";
$attr = "password";

// compare value
$r=ldap_compare($ds, $dn, $attr, $value);

if (
$r === -1) {
echo
"Error: " . ldap_error($ds);
} elseif (
$r === true) {
echo
"Password correct.";
} elseif (
$r === false) {
echo
"Wrong guess! Password incorrect.";
}

} else {
echo
"Unable to bind to LDAP server.";
}

ldap_close($ds);

} else {
echo
"Unable to connect to LDAP server.";
}
?>

Белешки

Ги ескејпува специјалните знаци во стринг за употреба во SQL изјава

ldap_compare() Пример #1 Целосен пример за проверка на пасворд

Белешки од корисници 4 белешки

не може да се користи за споредување на БИНАРНИ вредности!
21 години пред
Just a side note that this is not how you'd ever AUTHENTICATE someone, just an example code.

The common way to authenticate is to get the users name, use search and perhaps selection to the user to get her DN (single value) then attempt to BIND to the ldapserver using that dn and the offered password.  If it works, then it's the right password.

Note that the password offered MUST NOT BE EMPTY or many LDAPs will presume you meant to authenticate anonymously and it will succeed, leaving you thinking it's the right password.
chuck+ldap на 2006 точка snew точка com
21 години пред
With PHP 4.3.* is Password no longer a valid attribute.. try to use userPassword
oudejans на zeelandnet точка nl
yasuo_ohgaki at hotmail dot com
Not probably, will.  With PHP 4.0.4 and openldap 1.2.9 this little script, even with the correct attributes for the password does not do the job.  Would superb if it did!
Брајан Керхин &lt;kerhin на bigfoot точка com&gt;
yasuo_ohgaki at hotmail dot com
Interesting example. Apart from the fact that very few people would allow comaprisions of the password attribute for security reasons. The attribute name of "password" does not match the usual schemas.

The usual method of user id + password verification is to attempt to bind using the supplied credentials.

Ldap compare on password values will probably fail with ns directroy server and openldap v2+ becuase of server support for password hashing.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.