ACCESS_MASK

ACCESS_MASK 데이터 형식은 표준, 특정 및 제네릭 권한을 정의하는 DWORD 값입니다. 이러한 권한은 ACE( 액세스 제어 항목 )에서 사용되며 개체에 대해 요청되거나 부여된 액세스 권한을 지정하는 기본 수단입니다.

typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK* PACCESS_MASK;

설명

이 값의 비트는 다음과 같이 할당됩니다.

비트 의미
0 15
특정 권한. 마스크와 연결된 개체 형식과 관련된 액세스 마스크를 포함합니다.
16 23
표준 권한. 개체의 표준 액세스 권한을 포함합니다.
24
ACCESS_SYSTEM_SECURITY(시스템 보안)에 액세스합니다. SACL( 시스템 액세스 제어 목록)에 대한 액세스를 나타내는 데 사용됩니다. 이 유형의 액세스를 사용하려면 호출 프로세스에 SE_SECURITY_NAME (감사 및 보안 로그 관리) 권한이 있어야 합니다. 이 플래그가 감사 액세스 ACE(성공 또는 실패한 액세스)의 액세스 마스크에 설정된 경우 SACL 액세스가 감사됩니다.
25
허용되는 최대값(MAXIMUM_ALLOWED)입니다.
26 27
예약되어 있습니다.
28
제네릭 모두(GENERIC_ALL).
29
제네릭 실행(GENERIC_EXECUTE).
30
제네릭 쓰기(GENERIC_WRITE)입니다.
31
일반 읽기(GENERIC_READ).

표준 권한 비트(16~23)는 개체의 표준 액세스 권한을 포함하며 다음과 같은 미리 정의된 플래그의 조합일 수 있습니다.

bit 플래그 의미
16
DELETE
액세스 권한을 삭제합니다.
17
READ_CONTROL
보안 설명자의 소유자, 그룹 및 DACL( 임의 액세스 제어 목록 )에 대한 읽기 권한입니다.
18
WRITE_DAC
DACL에 대한 쓰기 액세스 권한.
19
WRITE_OWNER
소유자에 대한 쓰기 액세스 권한.
20
SYNCHRONIZE
액세스를 동기화합니다.

Winnt.h에 정의된 다음 상수는 특정 및 표준 액세스 권한을 나타냅니다.

#define DELETE                           (0x00010000L)
#define READ_CONTROL                     (0x00020000L)
#define WRITE_DAC                        (0x00040000L)
#define WRITE_OWNER                      (0x00080000L)
#define SYNCHRONIZE                      (0x00100000L)

#define STANDARD_RIGHTS_REQUIRED         (0x000F0000L)

#define STANDARD_RIGHTS_READ             (READ_CONTROL)
#define STANDARD_RIGHTS_WRITE            (READ_CONTROL)
#define STANDARD_RIGHTS_EXECUTE          (READ_CONTROL)

#define STANDARD_RIGHTS_ALL              (0x001F0000L)

#define SPECIFIC_RIGHTS_ALL              (0x0000FFFFL)

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2003 [데스크톱 앱만 해당]
헤더
Winnt.h(Windows.h 포함)

추가 정보

Access Control

기본 Access Control 구조체

액세스 권한 및 액세스 마스크

GENERIC_MAPPING