Hacer una Consulta al Active Directory desde SQL Server

En muchas oportunidades, hemos requerido tener acceso a la información del Active Directory desde una aplicación, una de las alternativas, es obtener esta data, a través de SQL Server.

Lo primero que debemos hacer es crear un Linked Server, el cual hará referencia con el servidor de Active Directory que deseamos consultar.

linked-1
Paso 1

linked2
Paso 2

linked3
Paso 3

linked4
Paso 4

Una vez creado el Linked Server, podemos procedera crear el Query, en esta oportunidad, usaremos OpenQuery, el cual ejecuta la consulta a través de servidor vinculado (Linked Server). Este servidor es un origen de datos OLE DB. Se puede hacer referencia a OPENQUERY en la cláusula FROM de una consulta como si fuera un nombre de tabla. También se puede hacer referencia a OPENQUERY como la tabla de destino de una instrucción INSERT, UPDATE, DELETE o TRUNCATE. Esto está sujeto a las capacidades del proveedor OLE DB.

La consulta quedaria de la siguiente forma:

SELECT * FROM OpenQuery ( 
  ADSI,  
  'SELECT streetaddress, pager, company, telephoneNumber,  
  mail, mobile, facsimileTelephoneNumber, department, 
  physicalDeliveryOfficeName, title, userPrincipalName, sAMAccountName, displayName
  FROM  ''LDAP://NombreServidor/OU=CCAL,DC=NombreDominio,DC=local'' 
  WHERE objectClass =  ''User'' 
  ') AS tblADSI
ORDER BY department asc, displayname asc
Show Comments

Get the latest posts delivered right to your inbox.