[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: LDAP
Ann59
Добрый день!
передо мной стоит задачка проверить логин и пароль пользователя windows (все пользователи в домене)
подключаюсь к контролеру домена:
$dm=ldap_connect("localhost");
echo "connect result is ".$dm."

";
и получаю результат:
connect result is Resource id #2
Не подскажете, что я делаю не правильно?



Спустя 51 минута, 10 секунд (7.11.2006 - 09:43) dreadboy написал(а):
всё правельно ты делаешь, за исключением попытки вывести коннект :)))<br>попробуй тоже самое c mysql_connect, ftp_connect и поймешь :)<br><br>держи код из мана:<br>
 
<?php
// basic sequence with LDAP is connect, bind, search, interpret search
// result, close connection
 
echo "<h3>LDAP query test</h3>";
echo "Connecting ...";
$ds=ldap_connect("localhost");  // must be a valid LDAP server!
echo "connect result is " . $ds . "
";
 
if ($ds) { 
    echo "Binding ..."; 
    $r=ldap_bind($ds);     // this is an "anonymous" bind, typically
                           // read-only access
    echo "Bind result is " . $r . "
";
 
    echo "Searching for (sn=S*) ...";
    // Search surname entry
    $sr=ldap_search($ds, "o=My Company, c=US", "sn=S*");  
    echo "Search result is " . $sr . "
";
 
    echo "Number of entires returned is " . ldap_count_entries($ds, $sr) . "
";
 
    echo "Getting entries ...<p>";
    $info = ldap_get_entries($ds, $sr);
    echo "Data for " . $info["count"] . " items returned:<p>";
 
    for ($i=0; $i<$info["count"]; $i++) {
        echo "dn is: " . $info[$i]["dn"] . "
";
        echo "first cn entry is: " . $info[$i]["cn"][0] . "
";
        echo "first email entry is: " . $info[$i]["mail"][0] . "
<hr />";
    }
 
    echo "Closing connection";
    ldap_close($ds);
 
} else {
    echo "<h4>Unable to connect to LDAP server</h4>";
}
?> 
 

Спустя 3 часа, 53 минуты, 52 секунды (7.11.2006 - 13:36) Ann59 написал(а):
А как проверить конкретного пользователя в домене?
(user и pass - принимаются из формы)

$r1 = ldap_bind($ad, $user, $pass);
if ($r1)
{print "Аутентификация";}
else
{print "Ошибка";}

выдает ошибку:
Warning: ldap_bind() [function.ldap-bind]: Unable to bind to server: Invalid credentials in login.php on line 70
как должен описываться user? это ведь не просто доменное имя?

а в ldap_search($ds, "o=My Company, c=US", "sn=S*") я не понимаю как 2 и 3 параметры должны быть заданы....
"sn=S*" - это фильтр (допустим, это $user), но как проверить правильность вводимого пароля?
"o=My Company, c=US" - а как их узнать для моего домена?

Спустя 2 часа, 12 минут (7.11.2006 - 15:48) dreadboy написал(а):
я вообще никогда с LDAP не работал.
не было неообходимости.
покапайся на php.net.


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.