DirectorySearcher를 실행해도 항상 결과가 성공적으로 반환되지 않는 문제가 있습니다. 예를 들어, 내가 문자열 (NativeGuid)을 변환하려면 다음 방법을 사용하여 내 관리자의 GUID에 보내드립니다 :.net에서 nativeguid를 사용하여 Active Directory에서 사용자를 찾는 방법은 무엇입니까?
는public static string Guid2OctetString(string objectGuid)
{
System.Guid guid = new Guid(objectGuid);
byte[] byteGuid = guid.ToByteArray();
string queryGuid = "";
foreach (byte b in byteGuid)
{
queryGuid += @"\" + b.ToString("x2");
}
return queryGuid;
}
이 가정으로 Active Directory에 의해 사용할 수있는 무언가에 GUID 문자열을 변환합니다. 관리자의 NativeGuid
을 실행하면 결과가 나옵니다. 그런데 응용 프로그램의 다음 단계에서 directReports Guids 중 하나를 동일한 방식으로 실행하지만 아무 결과도 얻지 못합니다. 사용자가 존재하고 내가 DirectoryEntry
을 당겨도 항목을 얻을 수 있지만 처리가 너무 느리기 때문에 전체 항목을 원하지 않습니다. 이 일을 빠르게하기 위해 DirectorySearcher
을 사용하여 필드를 좁힐 수 있어야합니다. 어떤 사용자의 디렉토리 검색에 왜 거위 알을 낳는 지 아이디어가 있습니까?
멋진 답변과 함께 좋은 +1 답변을드립니다. – Stefan
고맙습니다. 실제로 익숙합니다. 그러나 기본 속성 집합은 제한적입니다. 관리자에게 직접 액세스해야하며 모든 직접 보고서, 그룹 회원 및 AD에있는 사진이 필요합니다. 이 도우미 클래스에는 이러한 속성이있는 것 같지 않으며 클래스를 확장해야합니다. searcher를 사용하여 GUID 조회를 통해 진행되는 작업을 쉽게 파악할 수있는 것처럼 느껴집니다. – Sinaesthetic