Доступ к Active Directory через сервер SQL - PullRequest
0 голосов
/ 17 июня 2020

У меня есть база данных Active Directory (LDAP), в частности AD LDS, в которой хранится информация для веб-сервера на том же хосте. Я пытался получить доступ к этому серверу через Transact- SQL, но в настоящее время я заблокирован ошибкой:

Msg 7330, уровень 16, состояние 2, строка 3
Невозможно получить строку из OLE DB провайдер "ADSDSOObject" для связанного сервера "ADSI".

Обратите внимание, что это не база данных AD для хранения типичной пользовательской информации для аутентификации, и что не имеет запись D C на верхнем уровне ; он использует "O = [orgname], C = US" на верхнем уровне вместо соединения, которое я пытаюсь запросить.

У меня есть связанный сервер, определенный с именем «ADSI» с помощью ADSDSOObject провайдера и попытались использовать следующий запрос, чтобы попытаться получить информацию из базы данных AD:

SELECT name
FROM OPENQUERY(ADSI,
'SELECT name FROM ''LDAP://localhost:389/O=[orgname],C=US''
WHERE objectClass = ''person''')
AS ldap_qry ;

В этой конкретной базе данных есть только 6 записей с objectClass равным 'person'.

Я использую текущий контекст безопасности входа, который должен иметь доступ к базе данных (и я не получаю сообщения об ошибке, связанной с разрешениями). Если переключиться на базу данных AD, которая - , используемая для аутентификации (и использующая DC = [orgname], D C=net), я смогу получить доступ к информации.

сообщение об ошибке не особенно полезно, и вся информация, которую я нашел по этой конкретной ошибке, ссылается на ограничение на количество возвращаемых строк (что намного превышает 6 строк).

Кто-нибудь есть предложения?

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