액세스 권한 제어(AD DS)
Active Directory Domain Services 모든 개체는 ADS_RIGHTS_ENUM 열거형에 정의된 표준 액세스 권한 집합을 지원합니다. 이러한 액세스 권한은 개체 보안 설명자의 Access Control 항목(ACE)에서 개체에 대한 액세스를 제어하는 데 사용할 수 있습니다. 즉, 자식 개체 만들기 및 삭제 또는 개체 특성 읽기 및 쓰기와 같은 표준 작업을 수행할 수 있는 사용자를 제어할 수 있습니다. 그러나 일부 개체 클래스의 경우 표준 액세스 권한에서 지원되지 않는 방식으로 액세스를 제어하는 것이 바람직할 수 있습니다. 이를 용이하게 하기 위해 Active Directory Domain Services controlAccessRight 개체를 통해 표준 액세스 제어 메커니즘을 확장할 수 있습니다.
액세스 권한 제어는 다음 세 가지 방법으로 사용됩니다.
확장 권한의 경우 표준 액세스 권한 집합이 적용되지 않는 특수 작업입니다. 예를 들어 사용자 클래스에는 Exchange, Outlook 또는 다른 메일 응용 프로그램에서 사용할 수 있는 "다른 이름으로 보내기" 권한이 부여되어 특정 사용자가 다른 사용자가 대신 메일을 보낼 수 있는지 여부를 확인할 수 있습니다. validAccesses 특성을 ADS_RIGHT_DS_CONTROL_ACCESS(256) 액세스 권한과 동일하게 설정하여 controlAccessRight 개체에 확장된 권한이 생성됩니다.
속성 집합을 정의하는 경우 개별 특성이 아닌 개체 특성의 하위 집합에 대한 액세스를 제어할 수 있도록 합니다. 표준 액세스 권한을 사용하여 단일 ACE는 개체의 모든 특성 또는 단일 특성에 대한 액세스 권한을 부여하거나 거부할 수 있습니다. 액세스 권한 제어는 단일 ACE가 특성 집합에 대한 액세스를 제어하는 방법을 제공합니다. 예를 들어 사용자 클래스는 주소 및 전화 번호와 같은 특성을 포함하는 개인 정보 속성 집합을 지원합니다. 속성 집합 권한은 ACTR_DS_READ_PROP(16) 및 ACTRL_DS_WRITE_PROP(32) 액세스 권한을 모두 포함하도록 validAccesses 특성을 설정하여 controlAccessRight 개체에 만들어집니다 .
유효성이 검사된 쓰기의 경우 DS 개체의 특성에 값을 쓰기 전에 시스템에서 스키마에 필요한 것 이상으로 값 검사 또는 유효성 검사를 수행하도록 요구합니다. 이렇게 하면 특성에 입력된 값이 필요한 의미 체계를 준수하거나, 값의 법적 범위 내에 있거나, 특성에 대한 간단한 하위 수준 쓰기에 대해 수행되지 않는 다른 특별한 검사를 수행합니다. 유효성이 검사된 쓰기는 값 검사가 수행되지 않고 특성에 모든 값을 쓸 수 있도록 하는 "쓰기 <특성>" 권한과 구별되는 특수 권한에 연결됩니다. 유효성이 검사된 쓰기는 애플리케이션에 대한 새 제어 액세스 권한으로 만들 수 없는 세 가지 제어 액세스 권한 중 하나입니다. 이는 기존 시스템을 프로그래밍 방식으로 수정하여 유효성 검사를 적용할 수 없기 때문입니다. 시스템에서 컨트롤 액세스 권한이 유효성이 검사된 쓰기로 설정된 경우 controlAccessRight 개체의 validAccesses 특성에는 ADS_RIGHT_DS_SELF(8) 액세스 권한이 포함됩니다.
Windows 2000 Active Directory 스키마에는 세 개의 유효성이 검사된 쓰기만 정의되어 있습니다.
- 그룹 개체에 대한 Self-Membership 권한으로, 호출자의 계정을 허용하지만 다른 계정은 그룹 멤버 자격에서 추가하거나 제거할 수 없습니다.
- 컴퓨터 이름 및 도메인 이름을 준수하는 DNS 호스트 이름 특성을 설정할 수 있도록 하는 Computer 개체에 대한 Validated-DNS-Host-Name 권한입니다.
- Computer 개체에 대한 Validated-SPN 권한- 컴퓨터의 DNS 호스트 이름을 준수하는 SPN 특성을 설정할 수 있습니다.
편의를 위해 속성 집합 및 유효성이 검사된 쓰기가 확장된 권한으로 간주되지 않더라도 각 컨트롤 액세스 권한은 Configuration 파티션의 Extended-Rights 컨테이너에 있는 controlAccessRight 개체로 표시됩니다. 구성 컨테이너는 전체 포리스트에 복제되므로 제어 권한이 포리스트의 모든 도메인에 전파됩니다. 미리 정의된 여러 제어 액세스 권한이 있으며 사용자 지정 액세스 권한도 정의할 수 있습니다.
모든 제어 액세스 권한은 ACL 편집기에서 권한으로 볼 수 있습니다.
속성 집합에 대한 읽기/쓰기 액세스를 제어하도록 ACE를 설정하는 C++ 및 Visual Basic 코드 예제에 대한 자세한 내용은 디렉터리 개체에서 ACE를 설정하기 위한 예제 코드를 참조하세요.
제어 액세스 권한을 사용하여 특수 작업에 대한 액세스를 제어하는 방법에 대한 자세한 내용은 다음을 참조하세요.