ACCESS_MASK
O tipo de dados ACCESS_MASK é um valor DWORD que define direitos padrão, específicos e genéricos. Esses direitos são usados em ACEs ( entradas de controle de acesso ) e são o principal meio de especificar o acesso solicitado ou concedido a um objeto.
typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK* PACCESS_MASK;
Comentários
Os bits nesse valor são alocados da seguinte maneira.
Bits | Significado |
---|---|
0 15 |
Direitos específicos. Contém a máscara de acesso específica ao tipo de objeto associado à máscara. |
16 23 |
Direitos padrão. Contém os direitos de acesso padrão do objeto. |
24 |
Segurança do sistema de acesso (ACCESS_SYSTEM_SECURITY). Ele é usado para indicar o acesso a uma SACL ( lista de controle de acesso do sistema ). Esse tipo de acesso requer que o processo de chamada tenha o privilégio SE_SECURITY_NAME (Gerenciar log de auditoria e segurança). Se esse sinalizador estiver definido na máscara de acesso de uma ACE de acesso de auditoria (acesso bem-sucedido ou malsucedido), o acesso à SACL será auditado. |
25 |
Máximo permitido (MAXIMUM_ALLOWED). |
26 27 |
Reservado. |
28 |
Todos genéricos (GENERIC_ALL). |
29 |
Execução genérica (GENERIC_EXECUTE). |
30 |
Gravação genérica (GENERIC_WRITE). |
31 |
Leitura genérica (GENERIC_READ). |
Os bits de direitos padrão, de 16 a 23, contêm os direitos de acesso padrão do objeto e podem ser uma combinação dos sinalizadores predefinidos a seguir.
bit | Sinalizador | Significado |
---|---|---|
16 |
DELETE |
Exclua o acesso. |
17 |
READ_CONTROL |
Acesso de leitura ao proprietário, grupo e DACL ( lista de controle de acesso discricionário ) do descritor de segurança. |
18 |
WRITE_DAC |
Acesso de gravação à DACL. |
19 |
WRITE_OWNER |
Acesso de gravação ao proprietário. |
20 |
SINCRONIZAR |
Sincronizar o acesso. |
As constantes a seguir definidas em Winnt.h representam os direitos de acesso específicos e padrão.
#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 | Valor |
---|---|
Cliente mínimo com suporte |
Windows XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2003 [somente aplicativos da área de trabalho] |
Cabeçalho |
|