Função AddAccessAllowedAceEx (securitybaseapi.h)
A função AddAccessAllowedAceEx adiciona uma ACE ( entrada de controle de acesso ) permitida pelo acesso ao final de uma DACL (lista de controle de acesso discricionário ).
Sintaxe
BOOL AddAccessAllowedAceEx(
[in, out] PACL pAcl,
[in] DWORD dwAceRevision,
[in] DWORD AceFlags,
[in] DWORD AccessMask,
[in] PSID pSid
);
Parâmetros
[in, out] pAcl
Um ponteiro para um DACL. A função AddAccessAllowedAceEx adiciona uma ACE permitida pelo acesso ao final desta DACL. O ACE está na forma de uma estrutura ACCESS_ALLOWED_ACE .
[in] dwAceRevision
Especifica o nível de revisão da DACL que está sendo modificada. Esse valor pode ser ACL_REVISION ou ACL_REVISION_DS. Use ACL_REVISION_DS se a DACL contiver ACEs específicas do objeto.
[in] AceFlags
Um conjunto de sinalizadores de bits que controlam a herança da ACE. A função define esses sinalizadores no membro AceFlags da estrutura ACE_HEADER do novo ACE. Esse parâmetro pode ser uma combinação dos seguintes valores.
Valor | Significado |
---|---|
|
O ACE é herdado por objetos de contêiner. |
|
O ACE não se aplica ao objeto ao qual a ACL ( lista de controle de acesso ) é atribuída, mas pode ser herdada por objetos filho. |
|
Indica um ACE herdado. Esse sinalizador permite que operações que alterem a segurança em uma árvore de objetos modifiquem ACEs herdados, sem alterar ACEs que foram aplicadas diretamente ao objeto. |
|
Os bits OBJECT_INHERIT_ACE e CONTAINER_INHERIT_ACE não são propagados para um ACE herdado. |
|
O ACE é herdado por objetos não pertencentes a ele. |
[in] AccessMask
Um conjunto de sinalizadores de bits que usam o formato ACCESS_MASK . Esses sinalizadores especificam os direitos de acesso que o novo ACE permite para o SID ( identificador de segurança ) especificado.
[in] pSid
Um ponteiro para um SID que identifica a sessão de usuário, grupo ou logon à qual o novo ACE permite acesso.
Valor retornado
Se a função for bem-sucedida, o valor retornado será diferente de zero.
Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. Veja a seguir valores de erro possíveis.
Código de retorno | Descrição |
---|---|
|
O novo ACE não se encaixa na ACL. Um buffer de ACL maior é necessário. |
|
A ACL especificada não é formada corretamente. |
|
O parâmetro AceFlags não é válido. |
|
O SID especificado não é estruturalmente válido. |
|
A revisão especificada não é conhecida ou é incompatível com a da ACL. |
|
O ACE foi adicionado com êxito. |
Comentários
O chamador deve garantir que os ACEs sejam adicionados à DACL na ordem correta. Para obter mais informações, consulte Ordem das ACEs em uma DACL.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows XP [aplicativos da área de trabalho | aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2003 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | securitybaseapi.h (inclua Windows.h) |
Biblioteca | Advapi32.lib |
DLL | Advapi32.dll |