ACCESS_MASK
El tipo de datos ACCESS_MASK es un valor DWORD que define derechos estándar, específicos y genéricos. Estos derechos se usan en las entradas de control de acceso (ACE) y son los medios principales para especificar el acceso solicitado o concedido a un objeto.
typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK* PACCESS_MASK;
Comentarios
Los bits de este valor se asignan de la siguiente manera.
| Bits | Significado |
|---|---|
| 0 15 |
Derechos específicos. Contiene la máscara de acceso específica del tipo de objeto asociado a la máscara. |
| 16 23 |
Derechos estándar. Contiene los derechos de acceso estándar del objeto. |
| 24 |
Seguridad del sistema de acceso (ACCESS_SYSTEM_SECURITY). Se usa para indicar el acceso a una lista de control de acceso del sistema (SACL). Este tipo de acceso requiere que el proceso de llamada tenga el privilegio SE_SECURITY_NAME (Administrar auditoría y registro de seguridad). Si esta marca se establece en la máscara de acceso de una ACE de acceso de auditoría (acceso correcto o incorrecto), se auditará el acceso SACL. |
| 25 |
Máximo permitido (MAXIMUM_ALLOWED). |
| 26 27 |
Reservado. |
| 28 |
Todos genéricos (GENERIC_ALL). |
| 29 |
Ejecución genérica (GENERIC_EXECUTE). |
| 30 |
Escritura genérica (GENERIC_WRITE). |
| 31 |
Lectura genérica (GENERIC_READ). |
Los bits de derechos estándar, de 16 a 23, contienen los derechos de acceso estándar del objeto y pueden ser una combinación de las siguientes marcas predefinidas.
| bit | Marca | Significado |
|---|---|---|
| 16 |
DELETE |
Elimina el acceso. |
| 17 |
READ_CONTROL |
Acceso de lectura al propietario, grupo y lista de control de acceso discrecional (DACL) del descriptor de seguridad. |
| 18 |
WRITE_DAC |
Acceso de escritura a la DACL. |
| 19 |
WRITE_OWNER |
Acceso de escritura al propietario. |
| 20 |
SYNCHRONIZE |
Sincronizar el acceso. |
Las siguientes constantes definidas en Winnt.h representan los derechos de acceso específicos y estándar.
#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)
Requisitos
| Requisito | Value |
|---|---|
| Cliente mínimo compatible |
Windows XP [solo aplicaciones de escritorio] |
| Servidor mínimo compatible |
Windows Server 2003 [solo aplicaciones de escritorio] |
| Encabezado |
|