Я запрашиваю Active Directory из SQL Server через связанный сервер с именем LDAP
.
Связанный сервер был создан таким образом, проходя аутентификацию через специально созданную учетную запись службы myDomain\ServiceAccountWithNoPermissions
.
exec master.dbo.sp_addlinkedserver @server = N'LDAP', @srvproduct=N'Active Directory Service Interfaces', @provider=N'ADSDSOObject', @datasrc=N'adsdatasource'
exec master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'LDAP',@useself=N'False',@locallogin=NULL,@rmtuser=N'myDomain\ServiceAccountWithNoPermissions',@rmtpassword='########'
И я опрашиваю членов определенной группы Active Directory следующим образом:
select *
from OpenQuery (LDAP, '
select objectGUID, sAMAccountName
from ''LDAP://myServer.myDomain.com/DC=myDomain,DC=com''
where MemberOf=''CN=Some Group,OU=Folder,DC=myDomain,DC=com''
order by sAMAccountName asc
');
Вот моя проблема. Вышеуказанная система работает правильно для некоторых групп Active Directory, а не других.
По умолчанию я думаю, что Authenticated Users
должен иметь возможность запрашивать любые объекты пользователя или группы в Active Directory. И в качестве теста я проверил, что действующие разрешения myDomain\ServiceAccountWithNoPermissions
включают «Чтение всех свойств» в группах, для которых члены могут запрашивать и не запрашивать.
В чем может быть разница между группами, в которых можно выполнять запросыи без запроса?