2.2.1.1.1 ACCESS_MASK for All Objects
Certain ACCESS_MASK flags apply equally to all types of objects. These flags are described in the following table.
Value |
Meaning |
---|---|
DELETE 0x00010000 |
Delete object. |
READ_CONTROL 0x00020000 |
The read value of a DACL and owner in a security descriptor. |
WRITE_DAC 0x00040000 |
The write value of a DACL in a security descriptor. |
WRITE_OWNER 0x00080000 |
The write value of the owner in a security descriptor. |
MAXIMUM_ALLOWED 0x02000000 |
Used in requesting access; get as much access as the server will allow. |
The four high-order bits in ACCESS_MASK values are translated by the responder into specific ACCESS_MASK values using the following tables, depending on the type of the object that the operation is performed on. For numeric values of the symbolic names used in these tables, refer to section 2.2.1.1.2 for policy objects, section 2.2.1.1.3 for account objects, section 2.2.1.1.4 for secret objects, and section 2.2.1.1.5 for trusted domain objects. In the following tables, the symbol '|' is used to indicate that the value represented by the symbol is to be logically combined by using the bitwise OR operation with the other operant.
ACCESS_MASK value to be translated |
Translated to when used with policy object |
---|---|
0x80000000 |
POLICY_VIEW_AUDIT_INFORMATION | POLICY_GET_PRIVATE_INFORMATION | READ_CONTROL 0x00020006 |
0x40000000 |
POLICY_TRUST_ADMIN | POLICY_CREATE_ACCOUNT | POLICY_CREATE_SECRET | POLICY_CREATE_PRIVILEGE | POLICY_SET_DEFAULT_QUOTA_LIMITS | POLICY_SET_AUDIT_REQUIREMENTS | POLICY_AUDIT_LOG_ADMIN | POLICY_SERVER_ADMIN | READ_CONTROL 0x000207F8 |
0x20000000 |
POLICY_VIEW_LOCAL_INFORMATION | POLICY_LOOKUP_NAMES | READ_CONTROL 0x00020801 |
0x10000000 |
POLICY_VIEW_LOCAL_INFORMATION | POLICY_VIEW_AUDIT_INFORMATION | POLICY_GET_PRIVATE_INFORMATION | POLICY_TRUST_ADMIN | POLICY_CREATE_ACCOUNT | POLICY_CREATE_SECRET | POLICY_CREATE_PRIVILEGE | POLICY_SET_DEFAULT_QUOTA_LIMITS | POLICY_SET_AUDIT_REQUIREMENTS | POLICY_AUDIT_LOG_ADMIN | POLICY_SERVER_ADMIN | POLICY_LOOKUP_NAMES | DELETE | READ_CONTROL | WRITE_DAC | WRITE_OWNER 0x000F0FFF |
ACCESS_MASK value to be translated |
Translated to when used with account object |
---|---|
0x80000000 |
ACCOUNT_VIEW | READ_CONTROL 0x00020001 |
0x40000000 |
ACCOUNT_ADJUST_PRIVILEGES | ACCOUNT_ADJUST_QUOTAS | ACCOUNT_ADJUST_SYSTEM_ACCESS | READ_CONTROL 0x0002000E |
0x20000000 |
READ_CONTROL 0x00020000 |
0x10000000 |
ACCOUNT_VIEW | ACCOUNT_ADJUST_PRIVILEGES | ACCOUNT_ADJUST_QUOTAS | ACCOUNT_ADJUST_SYSTEM_ACCESS | DELETE | READ_CONTROL | WRITE_DAC | WRITE_OWNER 0x000F000F |
ACCESS_MASK value to be translated |
Translated to when used with secret object |
---|---|
0x80000000 |
SECRET_QUERY_VALUE | READ_CONTROL 0x00020002 |
0x40000000 |
SECRET_SET_VALUE | READ_CONTROL 0x00020001 |
0x20000000 |
READ_CONTROL 0x00020000 |
0x10000000 |
SECRET_QUERY_VALUE | SECRET_SET_VALUE | DELETE | READ_CONTROL | WRITE_DAC | WRITE_OWNER 0x000F0003 |
ACCESS_MASK value to be translated |
Translated to when used with trusted domain object |
---|---|
0x80000000 |
TRUSTED_QUERY_DOMAIN_NAME | READ_CONTROL 0x00020001 |
0x40000000 |
TRUSTED_SET_CONTROLLERS | TRUSTED_SET_POSIX | READ_CONTROL 0x00020014 |
0x20000000 |
TRUSTED_QUERY_CONTROLLERS | TRUSTED_QUERY_POSIX | READ_CONTROL 0x0002000A |
0x10000000 |
TRUSTED_QUERY_DOMAIN_NAME | TRUSTED_QUERY_CONTROLLERS | TRUSTED_SET_CONTROLLERS | TRUSTED_QUERY_POSIX | TRUSTED_SET_POSIX | TRUSTED_SET_AUTH | TRUSTED_QUERY_AUTH | DELETE | READ_CONTROL | WRITE_DAC | WRITE_OWNER 0x000F007F |