Предупреждение PHP: ldap_search () - PullRequest
       82

Предупреждение PHP: ldap_search ()

0 голосов
/ 15 октября 2018

Я пытаюсь реализовать проект github под названием ADReset на https://github.com/mprahl/ADReset/

. Я исправил несколько обнаруженных проблем, но у меня возникли проблемы при попытке настроить группы административной безопасности.Глядя на журналы ошибок apache, я вижу следующее:

[Mon Oct 01 04:32:25.705508 2018] [php7:warn] [pid 13411] [client XXXXXX:50840] 
PHP Warning: ldap_search(): Search: Operations error in 
/var/www/adreset/resources/classes/AD.php on line 93, 
referer: http://XXXXXX/settings/systemsettings.php

Глядя на строку 93, она является частью функции в классе.Функция выглядит следующим образом:

public function search($query) {
        if (isset($query)) {
            if ($result = ldap_search($this->ad_connection, 
                $this->connectionSettings['baseDN'], $query)) {
                $data = ldap_get_entries($this->ad_connection, $result);
                return $data;
            }

            else {
                return array();
            }
        }

Пытаясь определить источник проблемы, я добавил несколько журналов ошибок, и теперь функция имеет вид:

        public function search($query) {
        if (isset($query)) {
            error_log(print_r($query,true));
            error_log(print_r("AD Connection Stuffs " . ldap_error($this->ad_connection),true));
            error_log(print_r($this->connectionSettings['baseDN'],true));
            $result = ldap_search($this->ad_connection, $this->connectionSettings['baseDN'], $query);
            if ($result) {
                $data = ldap_get_entries($this->ad_connection, $result);
                return $data;
            }

            else {
                return array();
            }
        }

Когда я запускаюСценарий через пользовательский интерфейс, я вижу следующие ошибки:

[Sun Oct 14 22:41:33.128492 2018] [php7:notice] [pid 3236] [client xxx.xxx.xxx.xxx:59470] (&(objectClass=group)(sAMAccountName=test)), referer: http://XXXX.XXXX.com/settings/systemsettings.php
[Sun Oct 14 22:41:33.128590 2018] [php7:notice] [pid 3236] [client xxx.xxx.xxx.xxx:59470] AD COnnection Stuffs Success, referer: http://XXXX.XXXX.com/settings/systemsettings.php
[Sun Oct 14 22:41:33.128608 2018] [php7:notice] [pid 3236] [client xxx.xxx.xxx.xxx:59470] DC=XXXX,DC=com, referer: http://XXXX.XXXX.com/settings/systemsettings.php
[Sun Oct 14 22:41:33.128990 2018] [php7:warn] [pid 3236] [client xxx.xxx.xxx.xxx:59470] PHP Warning:  ldap_search(): Search: Operations error in /var/www/adreset/resources/classes/AD.php on line 97, referer: http://XXXX.XXXX.com/settings/systemsettings.php
[Sun Oct 14 22:41:33.129114 2018] [php7:notice] [pid 3236] [client xxx.xxx.xxx.xxx:59470] , referer: http://XXXX.XXXX.com/settings/systemsettings.php

Итак, я разбил его.$ This-> ad_connection возвращает результат «Success», Base DN возвращает правильный базовый DN для сервера AD, который я использую, и даже запрос правильный.Чтобы проверить работу запроса дважды, я использовал LDAP-браузер Softerra и выполнил поиск.Я полностью потерян, почему эта функция не работает.Любая помощь / направление будет оценено.

...