ACCESS_MASK
Il tipo di dati ACCESS_MASK è un valore DWORD che definisce diritti standard, specifici e generici. Questi diritti vengono usati nelle voci di controllo di accesso (AES) e sono i mezzi principali per specificare l'accesso richiesto o concesso a un oggetto.
typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK* PACCESS_MASK;
Commenti
I bit in questo valore vengono allocati come indicato di seguito.
BITS | Significato |
---|---|
0 15 |
Diritti specifici. Contiene la maschera di accesso specifica del tipo di oggetto associato alla maschera. |
16 23 |
Diritti standard. Contiene i diritti di accesso standard dell'oggetto. |
24 |
Sicurezza del sistema di accesso (ACCESS_SYSTEM_SECURITY). Viene usato per indicare l'accesso a un elenco di controllo di accesso del sistema (SACL). Questo tipo di accesso richiede che il processo chiamante disponga del privilegio SE_SECURITY_NAME (Gestire il controllo e il log di sicurezza). Se questo flag è impostato nella maschera di accesso di un ACE di accesso di controllo (accesso riuscito o non riuscito), l'accesso SACL verrà controllato. |
25 |
Massimo consentito (MAXIMUM_ALLOWED). |
26 27 |
Riservato. |
28 |
Generic all (GENERIC_ALL). |
29 |
Esecuzione generica (GENERIC_EXECUTE). |
30 |
Scrittura generica (GENERIC_WRITE). |
31 |
Lettura generica (GENERIC_READ). |
I bit di diritti standard, da 16 a 23, contengono i diritti di accesso standard dell'oggetto e possono essere una combinazione dei flag predefiniti seguenti.
bit | Flag | Significato |
---|---|---|
16 |
DELETE |
Eliminare l'accesso. |
17 |
READ_CONTROL |
Accesso in lettura al proprietario, al gruppo e all'elenco di controllo degli accessi discrezionali del descrittore di sicurezza. |
18 |
WRITE_DAC |
Accesso in scrittura all'elenco dati. |
19 |
WRITE_OWNER |
Accesso in scrittura al proprietario. |
20 |
SINCRONIZZARE |
Sincronizzare l'accesso. |
Le costanti seguenti definite in Winnt.h rappresentano i diritti di accesso specifici e standard.
#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)
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows XP [solo app desktop] |
Server minimo supportato |
Windows Server 2003 [solo app desktop] |
Intestazione |
|