2016-07-28 4 views
0

사용자 정보를 저장하는 Active Directory (LDAP)가 있습니다. TSQL을 사용하여 액세스하려고하는데 인증 문제가 있습니다.TSQL : LDAP에서 사용자 데이터에 액세스

enter image description here 사용자는 다음과 같은 속성이 있습니다

: : 이제

enter image description here

을, 나는을 얻기 위해 노력하고있어 LDAP는 다음과 같습니다

는 (필자는 데이터를 편집) OPENROWSET을 사용하여 SQL Server의 TSQL 쿼리를 통해이 사용자의 정보를 다음과 같이 입력하십시오 :

SELECT * 
FROM 
OPENROWSET('ADSDSOObject','adsdatasource'; 'domain.com.io\test';'the_sha1_pass', 
'SELECT givenname 
    FROM ''LDAP://domain.com.io/ou=Users, 
     dc=domain,dc=com,dc=io'' WHERE givenname = ''Test'' 
     ') 
내가 이상의 쿼리하기 위해 노력하고있어 사용자의 인증을 전송해야하는 경우 나도 몰라, 이제

Server: Msg 7399, Level 16, State 1, Line 1 OLE DB provider ' ADSDSOObject ' reported an error. The provider indicates that the user did not have the permission to perform the operation.

, 또는 자격 증명 I : 나는 그것을 실행할 때

는 그러나 나는 다음과 같은 오류가 발생합니다 LDAPAdmin을 사용하여 연결하십시오. 전송해야하는 경우 이미 암호화되었거나 암호화되지 않은 패스를 보내야합니까?

감사합니다.

+0

계정에 쿼리하는 OU를 탐색 할 수있는 권한이 있습니까? –

+0

@ JasonB. 나도 몰라, 어떻게 확인할 수 있니? LDAPAdmin을 사용하고 있는데 해당 OU에서 사용자를 생성하고 암호를 부여했습니다. – Heathcliff

답변

0

내가 WHERE 절에 사용자 수 objectcategory을 추가

SELECT * FROM OpenQuery(ADSI, 'SELECT * FROM ''LDAP://kodyaz.com/DC=kodyaz,DC=com'' WHERE objectCategory=''user'' AND givenname = ''KODYAZ'' ') 

의 대안으로, 당신은 쿼리 구조

SELECT * FROM OPENROWSET('ADSDSOObject','adsdatasource', 
'SELECT givenname 
    FROM ''LDAP://kodyaz.com/DC=kodyaz,DC=com'' WHERE givenname = ''KODYAZ'' 
     ') 

또는

다음 시도 할 수있는 사용자 이름과 암호를 제거하여 다음과 같이 당신은 당신의 OPENROWSET 쿼리를 변경할 수 있습니다 OpenQuery 명령에서 givenname 매개 변수 사용

위의 Select 명령문을 실행하기 전에 refe에 표시된대로 add LDAP as linked server in SQL Server을 사용할 수 있습니다. rred 자습서

EXEC sp_addlinkedserver 'ADSI', 'Active Directory Service Interfaces', 'ADSDSOObject', 'adsdatasource' 
+0

첫 번째 쿼리를 시도하면 7321 오류가 발생합니다. 두 번째 시도하면 같은 7321 오류가 발생합니다. 나는이 문제가 인증과 관련이 있다고 생각하지만, 어떤 사용자가 ADSI 연결에 어떤 암호를 사용하는지, LDAP 관리자가 권한을 부여하는 방법을 모르겠다. – Heathcliff

+0

나는 내 도메인의 구성원이고 내 도메인은 볼 수있다. 사용자는 LDAP 서버를 쿼리 할 수 ​​있습니다. 연결된 서버에서 Windows 인증 된 SQL Server 연결에 대한 현재 사용자로 인증 부분을 남겨두고 현재 사용자 권한 옵션을 사용하도록 변경할 때입니다. – Eralper

관련 문제