2011-09-16 8 views
1

다음 코드를 사용하여 SSL을 사용하여 LDAP 서버에 연결합니다. 다음 코드는 SSL 플래그를 해제 한 경우에만 작동합니다. SSL 연결을 위해 여기에 실종 된 내용을 알려주십시오. NetworkCredentials을 제공해야합니까? SSL을 통한 연결 중에 LDAP 연결이 실패합니다.

findall은 그것을 호출 될 때마다

서버가

ldapUrl="LDAP://x500.bund.de:389/l=Neutral,ou=BMI,o=Bund,c=DE"; 

DirectoryEntry dEntry =null; 

// for anonymous login. x500.bund.de supports this. 
dEntry = new DirectoryEntry(ldapUrl, null, null, 
      AuthenticationTypes.SecureSocketsLayer | AuthenticationTypes.Secure); 

DirectorySearcher search = new DirectorySearcher(dEntry); 

search.Filter = "((objectClass=*))";  
search.Filter = searchQuery; 
SearchResultCollection scl = search.FindAll(); 
+0

가능한 복제본 [C# : SSL을 사용하는 Active Directory에 연결하는 방법] (http://stackoverflow.com/questions/1228998/c-how-to-connect-to-active-directory-with-ssl) - 사용 가능) –

+0

다른 SO 질문 - SSL 연결에 포트 636 (389 대신)을 사용해야한다고 생각합니다. –

답변

3

389 작동하지 않은 LDAP 일반 텍스트 포트라고 말하고있다. STARTTLS 지정 문을 사용하고 서버가 SSL을 지원하도록 구성되어 있지 않으면 SSL을 사용할 수 없습니다. marc_s에서 제안한대로 636을 시도하십시오.