2012-03-08 4 views
0

ldap을 사용하여 활성 디렉토리 내의 변경 사항에 대해 dirSync 폴링을 구현합니다. 그것은 잘 작동하지만 발견 된 변경 이외에 SearchResultEntry 객체와 연관된 사용자 이름 속성 ("samaccountname")을 얻고 싶습니다.SearchResultEntry의 사용자 이름을 얻는 방법

답변

1

검색 요청의 일부로 속성을 요청해야합니다. 원하는 속성이 검색 요청 이전으로 서버에 전송되고 서버가 연결의 인증 상태에서 해당 속성을 검색하도록 허용하는 경우 해당 속성이 검색 결과에 포함됩니다. 자세한 내용은 LDAP: Programming PracticesUsing ldapsearch을 참조하십시오. 후자는 명령 줄 ldapsearch 도구를 참조하지만 개념은 모든 언어에 유효합니다.

1
SearchResult result; // this would've been defined elsewhere 
if(result != null) 
{ 
    DirectoryEntry entry = result.GetDirectoryEntry(); 
    string name = (string)entry["SAMAccountName"].Value; 
} 

이것은 당신이 이름에 사용자가 저장을에서 이름을 얻을 수 있도록 당신은 이미 디렉토리에 일부 검색에서 채워진의 SearchResult라는 결과가 있다고 가정합니다.

편집 :이 질문은 사용자가 요구 한 것이 아니며 DirectoryServices.SearchResult가 아닌 SearchResultEntry를 사용하고 있음을 깨달았습니다. 도움이 될 수 있기를 대비하여 여기에 남겨 두겠다.하지만 원래 질문을 제대로 읽지 못해 사과드립니다.

+0

감사합니다. @ 제티 – chloe

관련 문제