Posted
Filed under C#

응용 프로그램에서 Active Directory 계층 구조의 내용과 상호 작용하려면 DirectoryEntry 또는 DirectorySearcher 구성 요소 인스턴스를 만듭니다. 자세한 내용은 Active Directory 개체 소개를 참조하십시오. DirectoryEntry 구성 요소나 DirectorySearcher 구성 요소를 사용하려면 System.DirectoryServices 네임스페이스에 대한 참조를 응용 프로그램에 추가해야 합니다. 자세한 내용은 참조 추가 및 제거를 참조하십시오. DirectorySearcher 구성 요소 만들기에 대한 자세한 내용은 Active Directory 계층 구조 검색을 참조하십시오.

다음과 같은 여러 방법을 사용하여 DirectoryEntry 구성 요소의 인스턴스를 만들 수 있습니다.

  • DirectoryEntry 구성 요소의 인스턴스를 도구 상자의 구성 요소 탭에서 디자이너로 끌어 올 수 있습니다.
  • 코드에서 DirectoryEntry 구성 요소의 인스턴스를 만들 수 있습니다.
    참고   도구 상자의 구성 요소 탭에 있는 대부분의 구성 요소와 달리 DirectoryEntry 구성 요소는 서버 탐색기에 나타나지 않으므로 이 창에서 구성 요소의 인스턴스를 만들 수 없습니다.

디자이너에서 DirectoryEntry 구성 요소의 인스턴스를 만들려면

  1. 도구 상자의 구성 요소 탭에서 DirectoryEntry 개체를 폼 또는 구성 요소의 디자인 화면으로 끌어 옵니다.
  2. 속성 창에서 다음 구문을 사용하여 구성 요소를 바인딩할 리소스가 Active Directory 계층 구조에서 차지하는 위치를 구성 요소의 Path 속성에 설정합니다.
    Provider://providerpath
    위치 설명
    Provider 액세스할 디렉터리에 대한 서비스 공급자를 나타내는 표시기입니다. 공급자 식별자는 대/소문자를 구분하여 다음 값 중 하나를 입력해야 합니다.
    • LDAP://
    • WinNT://
    • NDS://
    • NWCOMPAT://
    ProviderPath 선택한 서비스 공급자의 형식에 따라 공급자 경로의 매개 변수가 달라집니다. 자세한 내용은 ADSI 시스템 공급자를 참조하십시오.

    예를 들어, 아래에 다양한 공급자 형식에 대한 유효 경로가 나와 있습니다.

    LDAP://MyDom.fabrikam.com/CN=SomeCN,DC=DEV,DC=SOMEDC,DC=COM,O=Internet
    LDAP://CN=SomeCN,DC=DEV,DC=SOMEDC,DC=COM,O=Internet
    WinNT://MyDomain/Group
    WinNT://MyDomain/MyComputer/aPrinter/
    NDS://ndsServer/O=Internet/DC=COM/DC=SOMEDC/DC=DEV/CN=SomeCN
    NWCOMPAT://binderyServer/ADivision

프로그래밍 방식으로 DirectoryEntry 구성 요소의 인스턴스를 만들려면

  • 코드에서 바인딩할 개체의 경로를 매개 변수로 전달하여 DirectoryEntry 클래스의 인스턴스를 만듭니다.

    아래 예제에서는 DirectoryEntry 개체에 공급자 경로를 전달하는 방법을 보여 줍니다.

    ' Visual Basic
    Dim myDir As 
       New System.DirectoryServices.DirectoryEntry("provider://path")
    
    // C#
    System.DirectoryServices.DirectoryEntry myDir = 
       new System.DirectoryServices.DirectoryEntry("provider://path");

    아래 예제에서는 코드에서 DirectoryEntry 구성 요소 인스턴스를 만들고 LDAP 경로를 사용하여 초기화한 다음 폼 요소에 표시하기 위해 항목의 이름과 GUID를 검색하는 방법을 보여 줍니다.

    ' Visual Basic
    Dim strpath As String = "LDAP://DC=onecity,DC=corp,DC=fabrikam,DC=com"
    Dim myDE As New System.DirectoryServices.DirectoryEntry(strpath)
    Dim nameGUID As String
    nameGUID = myDE.Name & myDE.Guid.ToString()
    
    // C#
    String strpath = "LDAP://DC=onecity,DC=corp,DC=fabrikam,DC=com";
    System.DirectoryServices.DirectoryEntry myDE = new 
       System.DirectoryServices.DirectoryEntry(strpath);
    string nameGuid = myDE.Name + myDE.Guid.ToString();

참고 항목

Active Directory 개체 소개 | Active Directory 노드 제거 | Active Directory 계층 구조 검색 | 연습: Active Directory 개체 추가

2009/07/17 20:28 2009/07/17 20:28