Compartilhar via


estrutura ACCESS_DENIED_ACE (winnt.h)

A estrutura ACCESS_DENIED_ACE define uma ACE ( entrada de controle de acesso ) para a DACL (lista de controle de acesso discricionário ) que controla o acesso a um objeto . Uma ACE negada pelo acesso nega acesso a um objeto para um administrador específico identificado por um SID ( identificador de segurança ).

Sintaxe

typedef struct _ACCESS_DENIED_ACE {
  ACE_HEADER  Header;
  ACCESS_MASK Mask;
  DWORD       SidStart;
} ACCESS_DENIED_ACE;

Membros

Header

Uma estrutura ACE_HEADER que especifica o tamanho e o tipo de ACE. Ele também contém sinalizadores que controlam a herança do ACE por objetos filho. O membro AceType da estrutura ACE_HEADER deve ser definido como ACCESS_DENIED_ACE_TYPE e o membro AceSize deve ser definido como o número total de bytes alocados para a estrutura de ACCESS_DENIED_ACE .

Mask

Uma estrutura ACCESS_MASK que especifica os direitos de acesso explicitamente negados por essa ACE.

SidStart

O primeiro DWORD do SID de um administrador. Os bytes restantes do SID são armazenados na memória contígua após o membro SidStart . Esse SID pode ser acrescentado com os dados do aplicativo.

Comentários

As estruturas ACE devem ser alinhadas nos limites do DWORD . Todas as funções de gerenciamento de memória do Windows retornam identificadores alinhados a DWORD à memória.

Os direitos de acesso especificados pelo membro Mask são negados a qualquer administrador que possua um SID habilitado que corresponda ao SID armazenado no membro SidStart .

Uma estrutura ACCESS_DENIED_ACE pode ser criada em uma ACL ( lista de controle de acesso ) por uma chamada para a função AddAccessDeniedAce ou AddAccessDeniedAceEx . Quando essas funções são usadas, a quantidade correta de memória necessária para acomodar o SID do administrador é alocada e os valores dos membros Header.AceType e Header.AceSize são definidos automaticamente. Se a função AddAccessDeniedAceEx for usada, o membro Header.AceFlags também será definido. Quando uma estrutura ACCESS_DENIED_ACE é criada fora de uma ACL, a memória suficiente deve ser alocada para acomodar o SID completo do administrador no membro SidStart e a memória contígua que a segue, e os valores dos membros Header.AceType, Header.AceFlags e Header.AceSize devem ser definidos explicitamente pelo aplicativo.

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 winnt.h (inclua Windows.h)

Confira também

ACE

ACL

AddAccessDeniedAce

SID