Предупреждение: ldap_bind (): невозможно привязать к серверу: неверные учетные данные PHP и LDAP - PullRequest
0 голосов
/ 17 января 2012

Я пытаюсь подключиться к серверу LDAP для аутентификации учетных данных пользователя.

Я нашел несколько пользователей с такой же проблемой, но их решения не помогли мне.

вот что я использую:

<?php
define('LDAP_SERVER', 'LDAP://pdc.mydomain.com');
define('LDAP_PORT', 389);
define('LDAP_TOP', 'dc=mydomain,dc=com');
if(isset($_POST['username']))
{
    if(!($ds = ldap_connect(LDAP_SERVER, LDAP_PORT)))
    {
        die ("Could not connect to mydomain domain");
    }
    $un = $_POST['username'].",".LDAP_TOP;
    //echo stripslashes($un)."<br>";
    $ldapbind = ldap_bind($ds, stripslashes($un), $_POST['password']);
    if($ldapbind)
        echo "login success";
    else
        echo "login failed";
}
?>

Я пытался использовать "mydomain \ myusername" и просто "myusername".

Я добавил функцию stripslashes (), когда ни один из них не работал для тестированияэто, и все еще без игры в кости.

ошибка, которую я получаю каждый раз: Предупреждение: ldap_bind (): Невозможно привязать к серверу: Неверные учетные данные

любая помощь будет принята с благодарностью

ТИА

Ответы [ 2 ]

2 голосов
/ 18 ноября 2015

Я знаю, что это довольно старый вопрос, и если вам все еще нужен ответ, что произойдет, если вы запустите этот код в одном файле php?

$username = 'hello';
$password = '123123';
$server = '192.168.32.4';
$domain = '@yourdomain.local';
$port = 389;

$connection = ldap_connect($server, $port);
if (!$connection) {
    exit('Connection failed');
}

// Help talking to AD
ldap_set_option($ldap_connection, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldap_connection, LDAP_OPT_REFERRALS, 0);

$bind = @ldap_bind($connection, $username.$domain, $password);
if (!$bind) {
    exit('Binding failed');
}

// This is where you can do your work
echo 'Hello from LDAP';

ldap_close($ldap_connection);

Более подробная информация здесь .

0 голосов
/ 18 ноября 2015

Проверьте, правильно ли ваш логин и пароль. И перед входом добавьте домен. Смотри в примере внизу (HQ \ login):

<?php
$login = 'HQ\student';
$password = 'MYPASS';

$ldap_link = ldap_connect('pdc.bc) or die("Could not connect to LDAP server.");

$ldapbind = @ldap_bind($ldap_link, $login, $password) or die ("Error trying to bind: ".ldap_error($ldap_link));
?>
...