Directory.SetAccessControl(String, DirectorySecurity) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
DirectorySecurity 개체에서 설명하는 ACL(액세스 제어 목록) 항목을 지정된 디렉터리에 적용합니다.
public:
static void SetAccessControl(System::String ^ path, System::Security::AccessControl::DirectorySecurity ^ directorySecurity);
public static void SetAccessControl (string path, System.Security.AccessControl.DirectorySecurity directorySecurity);
static member SetAccessControl : string * System.Security.AccessControl.DirectorySecurity -> unit
Public Shared Sub SetAccessControl (path As String, directorySecurity As DirectorySecurity)
매개 변수
- path
- String
ACL(액세스 제어 목록) 항목을 추가하거나 제거할 디렉터리입니다.
- directorySecurity
- DirectorySecurity
path
매개 변수에서 설명하는 디렉터리에 적용할 ACL 항목을 설명하는 DirectorySecurity 개체입니다.
예외
directorySecurity
매개 변수가 null
.
디렉터리를 찾을 수 없습니다.
path
잘못되었습니다.
현재 프로세스는 path
지정한 디렉터리에 액세스할 수 없습니다.
-또는-
현재 프로세스에는 ACL 항목을 설정할 수 있는 충분한 권한이 없습니다.
설명
SetAccessControl 메서드는 ACL(액세스 제어 목록) 항목을 편집되지 않은 ACL 목록을 나타내는 디렉터리에 적용합니다.
주의
directorySecurity
매개 변수에 지정된 ACL은 디렉터리에 대한 기존 ACL을 대체합니다. 새 사용자에 대한 권한을 추가하려면 GetAccessControl 메서드를 사용하여 기존 ACL을 가져오고 수정합니다.
ACL은 지정된 파일 또는 디렉터리에 대한 특정 작업에 대한 권한이 있거나 없는 개인 및 그룹에 대해 설명합니다. 자세한 내용은 방법: 액세스 제어 목록 항목 추가 또는 제거참조하세요.
SetAccessControl 메서드는 개체를 만든 후에 수정된 DirectorySecurity 개체만 유지합니다. DirectorySecurity 개체가 수정되지 않은 경우 파일에 유지되지 않습니다. 따라서 한 파일에서 DirectorySecurity 개체를 검색하고 동일한 개체를 다른 파일에 다시 적용할 수 없습니다.
한 파일에서 다른 파일로 ACL 정보를 복사하려면 다음을 수행합니다.
GetAccessControl 메서드를 사용하여 소스 파일에서 DirectorySecurity 개체를 검색합니다.
대상 파일에 대한 새 DirectorySecurity 개체를 만듭니다.
원본 DirectorySecurity 개체의 GetSecurityDescriptorBinaryForm 또는 GetSecurityDescriptorSddlForm 메서드를 사용하여 ACL 정보를 검색합니다.
SetSecurityDescriptorBinaryForm 또는 SetSecurityDescriptorSddlForm 메서드를 사용하여 3단계에서 검색된 정보를 대상 DirectorySecurity 개체에 복사합니다.
SetAccessControl 메서드를 사용하여 대상 DirectorySecurity 개체를 대상 파일로 설정합니다.
NTFS 환경에서는 사용자가 부모 폴더에 대한 ListDirectory 권한이 있는 경우 사용자에게 ReadAttributes 및 ReadExtendedAttributes 부여됩니다. ReadAttributes 및 ReadExtendedAttributes거부하려면 부모 디렉터리에서 ListDirectory 거부합니다.
적용 대상
추가 정보
.NET