Как выполнить запрос LDAP с помощью JavaScript?

попытка сделать гаджет боковой панели, который имеет функцию запроса ldap, но не смог найти очень хорошую или любую полезную документацию по этому вопросу. я не очень опытен в javascript и почти ничего не знаю о том, как работают запросы ldap, поэтому любая информация вообще была бы полезна.

информация:

  • хост:.б.С. д.е
  • порт: 389
  • ou: люди
  • o: x_y_z
  • c: нас!--8-->

первый фрагмент:

var sSearchURL = "ldap://a.b.c.d.e:389/o=x_y_z,c=us";

                var URLsuffix = "dc=" + form.SearchData.value;

                document.location = sSearchURL URLsuffix;

другой фрагмент:

 var ldap = GetObject('LDAP:');
                    var ad = ldap.OpenDSObject('LDAP://a.b.c.d.e:389/o=x_y_z', 
                        'cn=Administrator,ou=People,o=rootname', 'password', 0);

3 ответов


пока вы хотите запустить JavaScript в веб-браузере, вы ограничены протоколом HTTP и доменом, из которого ваш скрипт был загружен в первую очередь.

таким образом, разговор с сервером LDAP не будет возможен из движка JavaScript веб-браузеров.

существуют среды выполнения JavaScript, которые имеют меньше ограничений, где вы можете реализовать серверы сокетов и клиенты. Для conenctivity LDAP, который вам придется написать свою собственную библиотеку или найти некоторые существующий.


вы можете написать прокси-веб-службу, которая преобразует ваши HTTP-запросы в запросы LDAP, пересылает их на сервер LDAP и возвращает вам результаты. Конечно, это будет иметь последствия как для безопасности, так и для масштабируемости и далеко не тривиально.


Я не уверен, что ответ 1 Правильный. Домен будет ограничен доменом клиента для active directory запрос ldap. Однако LDAP: / / server не ограничивается только локальным доменом. Он ограничен "достижимыми" доменами. Если вы можете пинговать его, вы должны иметь возможность запросить его, учитывая надлежащие учетные данные.