sql server 2005 - name - Query AD del servidor sql 2005
sql server how to know instance name (1)
Estoy intentando consultar AD mediante ldap desde SQL Server 2005 pero obtengo el siguiente error:
Msg 7321, nivel 16, estado 2, línea 1 Se produjo un error al preparar la consulta "SELECT NAME, MAIL FROM" LDAP: /// CN = foo, CN = usuarios, DC = barra, DC = com "" para ejecución contra Proveedor OLE DB "ADsDSOObject" para el servidor vinculado "ADSI".
Esto es después de ejecutar el siguiente proceso almacenado:
exec sp_addlinkedserver ''ADSI'', ''Active Directory Services 2.5'', ''ADsDSOObject'', ''adsdatasource''
Actualmente estoy ejecutando la consulta en mi instancia local de SQL Server 2005. He intentado cambiar el contexto de seguridad a 1) Hecho sin ..., 2) hecho usando el inicio de sesión actual ..., y 3) Hacerlo usando este contexto de seguridad: especificando mi propia cuenta de dominio. Mismo error con los tres.
No estoy seguro si es importante, pero "barra" (consulte la consulta LDAP más arriba) no es el dominio de mi máquina (instancia local del servidor SQL) o del servidor LDAP.
¿Algunas ideas?
El principal problema es que las comillas dobles alrededor de la consulta LDAP deben duplicarse con comillas simples.
La consulta LDAP puede incluir como nombre de servidor o IP y / o una especificación LDAP.
Algunas consultas que me funcionan:
SELECT * FROM OPENQUERY
(ADSI,''SELECT NAME FROM ''''LDAP://*ldap.server.name*'''''')
SELECT * FROM OPENQUERY
(ADSI, ''SELECT name, sAMAccountName, distinguishedName
FROM ''''LDAP://DC=*mycompany*, DC=*mytld*''''
WHERE objectCategory = ''''Person'''' AND objectClass = ''''user'''''')
SELECT * FROM OPENQUERY
(ADSI,''SELECT name, sAMAccountName, distinguishedName
FROM ''''LDAP://*ldap.server.name*/OU=ITDept, OU=users, OU=DC, OU=Corporate, DC=*mycompany*, DC=*mytld*''''
WHERE objectCategory = ''''Person'''' AND objectClass = ''''user'''''')
Una vez más ... no hay comillas dobles en el anterior ... múltiples comillas simples.
ADSI necesita estar registrado / vinculado con
EXEC sp_addlinkedserver ''ADSI'', ''Active Directory Service Interfaces'', ''ADSDSOObject'', ''adsdatasource''
Si tiene problemas con los permisos, puede configurar la cuenta utilizada en la pestaña de propiedades de seguridad en el servidor vinculado ADSI.