보안 서술자

보안 서술자(security descriptor)는 보호 가능한 윈도우 객체 즉 고유한 이름으로 식별할 수 있는 객체에 대한 보안 정보의 데이터 구조이다. 보안 서술자는 파일, 폴더, 공유, 레지스트리 키, 프로세스, 스레드, 명명된 파이프, 서비스, 작업 객체 및 기타 리소스를 포함하여 모든 명명된 객체와 연결할 수 있다.

보안 서술자는 사용자 또는 그룹과 같은 수탁자에 대한 접근을 허용하거나 거부하는 접근 제어 엔트리(ACE)를 포함하는 재량적 접근 제어 목록(DACL)을 포함한다. 또한 객체 접근 감사를 제어하는 시스템 접근 제어 목록(SACL)을 포함한다. ACE는 객체에 명시적으로 적용되거나 부모 객체로부터 상속될 수 있다. ACL에서 ACE의 순서는 중요하며, 접근 허용 ACE보다 접근 거부 ACE가 더 높은 순서로 나타난다. 보안 서술자에는 객체 소유자도 포함된다.

필수 무결성 제어는 보안 서술자의 새로운 유형의 ACE를 통해 구현된다.https://msdn.microsoft.com/en-us/library/bb625957.aspx What is the Windows Integrity Mechanism?

파일 및 폴더 권한은 파일 탐색기, WMI, Cacls, XCacls, ICacls, SubInACLSubInACL home page과 같은 명령줄 도구, 프리웨어 Win32 콘솔 FILEACL,FILEACL home page  자유 소프트웨어 유틸리티 SetACL 및 기타 유틸리티를 포함한 다양한 도구로 편집할 수 있다. 보안 서술자를 편집하려면 사용자에게 객체에 대한 WRITE_DAC 권한이 필요하며, 이 권한은 일반적으로 기본적으로 관리자 및 객체 소유자에게 위임된다.

NTFS 권한
다음 표는 NTFS 권한과 그 역할을 요약한 것이다(개별 행). 이 표는 다음 정보를 보여준다.

 권한 코드: 각 접근 제어 엔트리(ACE)는 숫자 코드로 권한을 지정한다. 누적될 수 있는 14개의 코드(이전 시스템에서는 12개)가 있다.
 의미: 각 권한 코드는 파일 또는 폴더에 적용되는지에 따라 의미가 다르다. 예를 들어, 파일의 코드 0x01은 파일을 읽을 권한을 나타내지만, 폴더의 코드 0x01은 폴더 내용을 나열할 권한을 나타낸다. 그러나 의미만 아는 것은 소용이 없다. ACE는 또한 누구에게 권한이 적용되는지, 그리고 그 권한이 부여되는지 또는 거부되는지를 지정해야 한다.
 포함된 권한: 개별 권한 외에도 ACE는 "일반 접근 권한"으로 알려진 특별 권한을 지정할 수 있다. 이러한 특별 권한은 여러 개별 권한의 동등한 것이다. 예를 들어, GENERIC_READ(또는 GR)는 "데이터 읽기", "속성 읽기", "확장 속성 읽기", "권한 읽기" 및 "동기화"와 동등하다. 이 다섯 가지를 동시에 요청하는 것이 타당하므로 "GENERIC_READ"를 요청하는 것이 더 편리하다.
 별칭: 보안 서술자 정의 언어와 윈도우 명령줄 유틸리티(icacls 및 cacls)에는 이러한 권한에 대한 자체 별칭이 있다.

 권한코드 의미 포함된 권한 별칭 파일용 폴더용 R E W A M SDDL에서 icacls에서 cacls에서 0x01      데이터 읽기  폴더 내용 나열                  CC  RD    FILE_READ_DATA 0x80      속성 읽기                  DC  RA    FILE_READ_ATTRIBUTES 0x08      확장 속성 읽기                  SW  REA   FILE_READ_EA 0x20      파일 실행  폴더 트래버스                         WP   X     FILE_EXECUTE 0x20000   권한 읽기           RC  RC    READ_CONTROL 0x100000  동기화            S     SYNCHRONIZE 0x02      데이터 쓰기  파일 생성                         DC  WD    FILE_WRITE_DATA 0x04      데이터 추가  폴더 생성                         LC  AD    FILE_APPEND_D 0x100     속성 쓰기                         CR  WA    FILE_WRITE_ATTRIBUTES 0x10      확장 속성 쓰기                         RP  WEA   FILE_WRITE_EA 0x10000   삭제 (또는 이름 바꾸기)                                SD  DE    DELETE 0x40000   권한 변경                                       WD  WDAC  WRITE_DAC 0x80000   소유권 가져오기                                       WO  WO    WRITE_OWNER 0x40      하위 폴더 및 파일 삭제                                       DT  DC    FILE_DELETE_CHILD

대부분의 권한은 자명하지만, 다음은 예외이다.

 파일의 이름을 바꾸려면 "삭제" 권한이 필요하다.
 파일 탐색기는 "동기화"를 표시하지 않으며 항상 설정한다. 파일 탐색기 및 윈도우 명령 프롬프트와 같은 다중 스레드 앱은 파일 및 폴더에서 작업하려면 "동기화" 권한이 필요하다.

내용주

 같이 보기 

 정보 기술 보안 감사
 허가 (컴퓨터 과학)
 컴퓨터 보안
 정보 보안
 토큰 (윈도우 NT 아키텍처)
 윈도우 SID
 SDDL

 각주 

 외부 링크 
 SS64.com의 CACLS 명령 설명
 SetACL SourceForge 페이지

분류:운영체제 보안
분류:윈도우 구성 요소
분류:마이크로소프트 윈도우 보안 기술