Ste*_*mer 10

相当普遍的问题,但这里有一些指示.

您需要在SQL Server上创建指向ADSI(Active Directory服务接口)的链接服务器,就像这样做.

EXEC sp_addlinkedserver 'ADSI', 'Active Directory Services 2.5', 'ADSDSOObject', 'adsdatasource'
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用以下类型的查询.


SELECT *
FROM OPENQUERY(ADSI, 'SELECT sAMAccountName
FROM ''LDAP://DC=MyDC,DC=com,DC=uk''
WHERE objectCategory = ''Person''
AND objectClass = ''user'')
Run Code Online (Sandbox Code Playgroud)

您需要适当地设置LDAP://行(请向您的AD管理员询问详细信息)并注意在SQL Server中默认禁用使用OpenQuery的分布式adhoc查询.一旦你有了上述内容,谷歌应该很容易找到任何特定的变化.


gbn*_*gbn 5

是.

链接服务器:

EXEC master.dbo.sp_addlinkedserver
    @server = N'ADSI', 
    @srvproduct=N'Active Directory Services',
    @provider=N'ADsDSOObject', 
    @datasrc=N'Servername.domain.com'
Run Code Online (Sandbox Code Playgroud)

查询:

select * from openquery
(
ADSI,'SELECT name 
FROM ''LDAP://Servername.domain.com''
WHERE objectCategory = ''Person'' AND objectClass = ''user''
')
Run Code Online (Sandbox Code Playgroud)

如果您在Google上搜索链接服务器和LDPA,有很多示例.我这样说是因为LDAP使用起来非常复杂.