다음을 통해 공유


스키마 구현

Active Directory Domain Services 클래스 및 특성 정의는 각각 classSchemaattributeSchema 클래스의 인스턴스로 디렉터리에 저장됩니다. classSchemaattributeSchema 는 스키마에 정의된 클래스입니다. Active Directory 스키마를 조작하려면 다른 개체를 조작하는 데 사용되는 것과 동일한 LDAP 작업을 사용합니다. 스키마는 전체 포리스트에 영향을 주는 디렉터리의 핵심 부분이기 때문에 스키마 확장에 특별한 제한이 적용됩니다. 제한 사항에 대한 자세한 내용은 스키마 확장에 대한 제한을 참조하세요.

스키마 구현을 요약하려면 다음을 수행합니다.

  • classSchema 클래스의 인스턴스는 Active Directory Domain Services 지원하는 모든 개체 클래스를 정의합니다. classSchema 개체의 특성(예: mayContainmustContain 특성)은 사용자 개체의 특성(예: userPrincipalNametelephoneNumber 특성)이 해당 사용자를 설명하는 것과 동일한 방식으로 개체 클래스를 설명합니다. 자세한 내용은 개체 클래스의 특성을 참조하세요.

  • attributeSchema 클래스의 인스턴스는 Active Directory Domain Services 지원하는 모든 특성을 정의하는 데 사용됩니다. attributeSchema 개체의 특성(예: attributeSyntaxisSingleValued 특성)은 사용자 개체의 특성이 해당 사용자를 설명하는 것과 동일한 방식으로 특성을 설명합니다. 자세한 내용은 특성의 특성을 참조하세요.

  • attributeSchemaclassSchema 클래스의 인스턴스는 스키마 컨테이너인 디렉터리의 잘 알려진 위치에 저장됩니다. 스키마 컨테이너에는 항상 양식의 고유 이름이 있습니다.

    CN=Schema,CN=Configuration,<DC=forestroot>
    

    여기서 "<DC=forestroot>"는 포리스트 루트의 고유 이름입니다(예: "DC=Fabrikam,DC=Com").

    스키마 컨테이너의 고유 이름을 얻으려면 rootDSE의 schemaNamingContext 특성을 읽어 보세요. rootDSE 및 해당 특성에 대한 자세한 내용은 서버리스 바인딩 및 RootDSE를 참조하세요.

스키마에 대해 생각할 때 다음을 기억하세요.

  • 스키마 변경 내용은 전역입니다. 전체 포리스트에 대한 단일 스키마가 있습니다. 스키마는 전역적으로 복제됩니다. 스키마의 복사본은 포리스트의 모든 도메인 컨트롤러에 있습니다. 스키마를 확장하면 전체 포리스트에 대해 확장됩니다.
  • 스키마 추가는 되돌릴 수 없습니다. 새 클래스 또는 특성이 스키마에 추가되면 제거할 수 없습니다. 기존 특성 또는 클래스는 사용하지 않도록 설정할 수 있지만 제거할 수는 없습니다. 자세한 내용은 기존 클래스 및 특성 비활성화를 참조하세요.
  • 클래스 또는 특성을 사용하지 않도록 설정해도 클래스 또는 특성의 기존 인스턴스에는 영향을 주지 않지만 새 인스턴스가 만들어지지는 않습니다. 사용하지 않도록 설정되지 않은 클래스에 포함된 특성은 사용하지 않도록 설정할 수 없습니다.