Я пытаюсь использовать запрос LDAP, чтобы получить группы AD одного из моих подразделений, на данный момент я написал это:
<?php
session_start();
//::::::::DEBUG::::::::\\
//echo $_SESSION['login_session'];
//echo "<br>";
//echo $_SESSION['password_session'];
//echo "<br>";
//echo $_SESSION['AD_session'];
//$_SESSION['AD_session']=ldap_conect(XXX.XXX.XXX,389) but i apparently cannot conserve this function in a $_SESSION var...
//echo "<br>";
//echo $_SESSION['DN_SESSION'];
//"OU=XXX,DC=XXX,DC=XXX"
//echo "<br>";
//::::::::DEBUG::::::::\\
//----------------------------------------------------------------------------------------------------
//::::::::SECURITY FUNCTION::::::::\\
if (NULL!==($_SESSION['login_session']&&$_SESSION['password_session'])){
//::::::::SECURITY FUNCTION::::::::\\
//----------------------------------------------------------------------------------------------------
//::::::::VARIABLES::::::::\\
$filter = "(CN=*)";
$attr = array("OU","CN","DC");
//::::::::VARIABLES::::::::\\
//----------------------------------------------------------------------------------------------------
//::::::::LDAP's setting::::::::\\
ldap_set_option(ldap_connect("XXX.XXX.XXX",389), LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option(ldap_connect("XXX.XXX.XXX",389), LDAP_OPT_REFERRALS, 0);
//::::::::LDAP's setting::::::::\\
//----------------------------------------------------------------------------------------------------
//::::::::LDAP BIND::::::::\\
ldap_bind(ldap_connect("XXX.XXX.XXX",389),"CN=".$_SESSION['login_session'].",OU=XXX,OU=XXX,DC=XXX,DC=XXX", $_SESSION['password_session']);
//::::::::LDAP BIND::::::::\\
//----------------------------------------------------------------------------------------------------
//::::::::REQUESTS VARIABLES::::::::\\
$result = ldap_search(ldap_connect("XXX.XXX.XXX",389),$_SESSION['DN_SESSION'], $filter, $attr);
$rescount = ldap_count_entries(ldap_connect("XXX.XXX.XXX",389),$result);
$data = ldap_get_entries(ldap_connect("XXX.XXX.XXX",389),$result);
//::::::::REQUESTS VARIABLES::::::::\\
//----------------------------------------------------------------------------------------------------
//::::::::RESULTS DISPLAY::::::::\\
echo '<pre>';
foreach($data as $row) {
print_r($row);
}
//::::::::RESULTS DISPLAY::::::::\\
//----------------------------------------------------------------------------------------------------
?>
Функция привязки работает хорошо, и я 'используя действующего пользователя для запроса моих групп AD.Но я получаю сообщение «ldap_search (): Search: Operations error» в моем запросе ldap_search.Я некоторое время искал на разных форумах и видел некоторые решения: настройку протокола и направление AD, что я и сделал в части настройки моего LDAP, я также увидел, что некоторые люди получают эту ошибку, потому что они используют DNвместо DC в отличительном имени, которого они хотели достичь, но это не мой случай ...
Кто-то имеет представление о том, в чем проблема в моем коде?Большое спасибо.