Php – ldap_search(): поиск: ошибка операции

Я пробовал почти все, чтобы решить эту проблему, но, к сожалению, не смог, я начинаю думать, что это что-то внутри моей организации, но когда я спросил всех, они сказали мне, что ничто вас не блокирует, так что, возможно, я упускаю что-нибудь: Моя цель — найти любого пользователя или группу в моем LDAP на вершине дерева в активном каталоге. У меня был PHP версии 8.1, и, поскольку там возникла проблема с ldap_search, я попытался обновиться до версии 8.3.6.

<?php
{
    $ldaprdn = "username";
    $ldappass = 'password';
    
    $ldapconn = ldap_connect("ldapserver") or die ("could not connect to LDAP server");
    if ($ldapconn)
    {
        print("connected");
        $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
        $user_to_search = "My_User";
        if ($ldapbind)
        {
            print("binded");
            $filter = "(samaccountname=$user_to_search*)";
            $justthese = array("samaccountname");
            $result = ldap_search($ldapconn, "DC=Top,DC=OrganizationTree", $filter, $justthese);
            $entries = ldap_get_entries($ldapconn, $result);
            print_r($entries);
        }
    }
}
?>

это ошибка, которую я получаю сейчас: php alertig: ldap_search(): Поиск: ошибка операции в...... онлайн

Должен быть признателен всем, кто может пролить свет на этот вопрос... Я также пытался включить «режим отладки» в php, чтобы получить больше информации об этой проблеме, но, к сожалению, не получил более актуальной информации.

ini_set('display_startup_errors', 1);
ini_set('display_errors', 1);
error_reporting(-1);

или

error_reporting(E_ALL);
ini_set('display_errors', 'on');

Можете ли вы предоставить полное предупреждающее сообщение, которое вы получаете?

Cyclonecode 21.04.2024 13:03

Предупреждение PHP: ldap_search(): Поиск: ошибка операции в ADSearch.php в строке 17, в основном это эта строка: $result = ldap_search($ldapconn, "DC=Top,DC=OrganizationTree", $filter, $justthese); @Циклонкод

Tal 21.04.2024 13:35

Может быть, проблема с разрешением? Имеет ли пользователь право осуществлять поиск?

Olivier 21.04.2024 15:02

@Olivier Дело в том, что иногда это работает, иногда нет, у него нет правил, я начинаю думать, что это либо связано с файлами PHP/DLL, либо с некоторыми проблемами в сети/с безопасностью, дело в том, что если, например, я возьму следующее базовое DN: $result = ldap_search($ldapconn, "OU=IT,DC=Top,DC=OrganizationTree", $filter, $justthese); Изменено с: «DC=Top,DC=OrganizationTree» -> «OU=IT,DC=Top,DC=OrganizationTree» будет работать без остановки! но пользователями могут быть группы AD или пользователи, не принадлежащие указанному подразделению.

Tal 21.04.2024 15:13

Убедитесь, что пользователю, которого вы привязываете, разрешено выполнять поиск, также было бы полезно проверить настройку версии протокола и разрешить переходы, например. ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3); ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);

Cyclonecode 21.04.2024 15:41

@Cyclonecode Спасибо, я уже пробовал это, и это не сработало, я собираюсь проверить это еще раз, возможно, я не поместил его в правильное место на своей странице. прямо сейчас я поместил его прямо перед ldap_bind, надеюсь, это решит мою проблему.

Tal 21.04.2024 16:42

Является ли пользователь администратором? Вы пробовали с администратором проверить, работает ли это?

Olivier 21.04.2024 17:31

@Оливье, пользователь является администратором домена

Tal 21.04.2024 18:11

То, что сказал Cyclonecode, следует сделать в любом случае, даже если это не решит проблему... Действительно ли базовый DN правильный? DC=Top,DC=OrganizationTree выглядит совсем не реалистично (это означает, что ваш домен AD был top.organizationtree)... Можете ли вы сделать ldap_read($conn, "", "(objectClass=*)", ["*"]), и если да, то какую запись он возвращает?

grawity_u1686 22.04.2024 06:32

@ user1686 Здравствуйте, базовый DN правильный, я его замаскировал, это может быть: example.com, что означает DC=example,DC=com. Я просто пытался убедиться, что люди поймут, что я говорю о верхней части дерево в LDAP/AD. Я все еще тестирую то, что Cyclonecode предложил добавить, пока все хорошо, но так было и раньше. Я обязательно обновлю тему после праздников, потому что сейчас мне заблокирован доступ к моей организации :)

Tal 22.04.2024 13:32
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
10
96
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Ну, на самом деле у меня нет ответа на мою проблему, это либо проблема с сетью, которую мы исправили во время праздника, либо предложение @Cyclonecode добавить

ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3); 
ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);

в мой код. Пока все хорошо, данные извлекаются без остановок и плавно. спасибо всем, кто нашел время прочитать и помочь с моей проблемой.

Другие вопросы по теме