Partilhar via


Provedor OLE DB para serviços de diretório da Microsoft

O Microsoft OLE DB Provider para Serviços de Diretório da Microsoft fornece acesso a informações no Serviço de Diretório do Microsoft Windows 2000. O número de máximo de objetos que podem ser retornados por uma consulta que usa esse provedor é 1000.

Para criar um servidor vinculado em relação ao Serviço de Diretório do Windows 2000

  • Crie um servidor vinculado usando ADSDSOObject como o provider_name e adsdatasource como o argumento do data_source do procedimento armazenado do sistema do sp_addlinkedserver, como:

    EXEC sp_addlinkedserver 'ADSI', 'Active Directory Services 2.5', 
    'ADSDSOObject', 'adsdatasource'
    GO
    

Para logons autenticados do Windows, o auto-mapeamento é suficiente para acessar o diretório usando Delegação de Segurança do SQL Server. Como o auto-mapeamento é criado por padrão para servidores vinculados executando sp_addlinkedserver, nenhum outro mapeamento de logon é necessário.

Para logons autenticados do SQL Server, logons/senhas apropriados podem ser configurados para conexão ao serviço de diretório usando o procedimento armazenado do sistema sp_addlinkedsrvlogin.

ObservaçãoObservação

Quando possível, use a Autenticação do Windows.

Consultando o serviço de diretório

O Microsoft OLE DB Provider para Serviços de Diretório da Microsoft oferece suporte a dois dialetos de comandos, LDAP e SQL, para consultar o Serviço de Diretório. A função OPENQUERY pode ser usada para enviar um comando ao Serviço de Diretório e consumir seus resultados em uma declaração SELECT.

ObservaçãoObservação

O Microsoft OLE DB Provider para Serviços de Diretório da Microsoft não oferece suporte a consultas LDAP diretamente do Integration Services. Em vez disso, crie um servidor vinculado para os Serviços de Diretório da Microsoft e use OPENQUERY conforme descrito neste tópico ou use uma Tarefa Script. Para obter um exemplo, consulte Consultando o Active Directory com a tarefa Script.

O exemplo a seguir mostra como criar uma exibição que usa o OPENQUERY para retornar informações do diretório no servidor ADSISrv cujo endereço de domínio é sales.adventure-works.com. O comando dentro da função OPENQUERY é uma consulta SQL em relação ao diretório para retornar os atributos Name, SN e ST de objetos que pertencem à Classe contact em um local hierárquico especificado (OU=Sales) no diretório. A exibição pode ser usada então em qualquer consulta do SQL Server.

CREATE VIEW viewADContacts 
AS
SELECT [Name], SN [Last Name], ST State
FROM OPENQUERY( ADSI, 
   'SELECT Name, SN, ST
   FROM ''LDAP://ADSISrv/ OU=Sales,DC=sales,DC=adventure-works,DC=com''
   WHERE objectCategory = ''Person'' AND
      objectClass = ''contact''')
GO
SELECT * FROM viewADContacts

Para obter mais informações sobre os dialetos LDAP e SQL, consulte a documentação de Serviços do Microsoft Active Directory.