Как мне выполнить запрос LDAP с помощью JavaScript? - PullRequest
7 голосов
/ 23 июля 2010

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

Информация:

  • хост: a.b.c.d.e
  • порт: 389
  • оу: люди
  • o: x_y_z
  • c: us

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

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);

Ответы [ 4 ]

8 голосов
/ 26 июля 2010

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

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

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

5 голосов
/ 25 июля 2011

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

1 голос
/ 16 января 2019

Как уже упоминал Selfawaresoup, существуют ограничения для выполнения этого только на стороне клиента, однако, если вы можете разместить свое приложение / страницу на nodejs, вы можете использовать с ним плагин LDAP.

Ссылки на nodejs следующие: https://nodejs.org/en/ https://nodejs.org/en/download/

Плагин Nodejs LDAP: http://ldapjs.org/

Инструкция по настройке nodejs для обслуживания http: https://www.sitepoint.com/build-a-simple-web-server-with-node-js/ https://blog.risingstack.com/your-first-node-js-http-server/

Хотя это руководство предназначено для конкретного приложения, оно демонстрирует интеграцию запроса LDAP через nodejs: https://www.ibm.com/developerworks/library/se-use-ldap-authentication-authorization-node.js-bluemix-application/index.html

Вот рабочая демонстрация (обратите внимание, что это для запросов к публичным серверам LDAP): https://login -using-ldap.mybluemix.net /

Удачи вам, однако вы решите это.

1 голос
/ 14 декабря 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...