Função RtlAddAccessAllowedAceEx (ntifs.h)
A rotina de rtlAddAccessAllowedAceEx adiciona uma entrada de controle de acesso permitida pelo acesso (ACE) com sinalizadores ACE de herança a uma lista de controle de acesso (ACL). O acesso é concedido ao identificador de segurança especificado (SID).
Sintaxe
NTSYSAPI NTSTATUS RtlAddAccessAllowedAceEx(
[in, out] PACL Acl,
[in] ULONG AceRevision,
[in] ULONG AceFlags,
[in] ACCESS_MASK AccessMask,
[in] PSID Sid
);
Parâmetros
[in, out] Acl
Um ponteiro para um buffer alocado pelo chamador que contém a ACL a ser modificada. RtlAddAccessAllowedAceEx adiciona uma ACE permitida pelo acesso ao final desta ACL. O ACE está na forma de uma estrutura ACCESS_ALLOWED_ACE.
[in] AceRevision
Nível de revisão de ACL do ACE a ser adicionado. Esse valor pode ser ACL_REVISION ou ACL_REVISION_DS. Ele deve ser ACL_REVISION_DS se a ACL contiver um ACE específico do objeto.
[in] AceFlags
Máscara de bits especificando os sinalizadores herdados do ACE a ser adicionado.
[in] AccessMask
Uma máscara de bits de um ou mais sinalizadores ACCESS_MASK que especificam os direitos de acesso a serem concedidos ao SID especificado. Para obter mais informações, consulte a descrição do parâmetro DesiredAccess de ZwCreateFile.
[in] Sid
Um ponteiro para a estrutura sid que representa uma conta de usuário, grupo ou logon que está recebendo acesso.
Valor de retorno
RtlAddAccessAllowedAceEx pode retornar um dos seguintes valores:
Código de retorno | Descrição |
---|---|
STATUS_SUCCESS | O ACE foi adicionado com êxito. |
STATUS_ALLOTTED_SPACE_EXCEEDED | Um novo ACE não se encaixa na ACL. Um buffer de ACL maior é necessário. Para obter mais informações sobre como calcular o tamanho de uma ACL, consulte RtlCreateAcl. |
STATUS_INVALID_ACL | A ACL especificada não está formada corretamente. |
STATUS_INVALID_PARAMETER | O parâmetro AceFlags era inválido. |
STATUS_INVALID_SID | A estrutura sid especificada não é estruturalmente válida. |
STATUS_REVISION_MISMATCH | O AceRevision especificado não é conhecido ou não é compatível com o da ACL. |
Observações
Ao contrário RtlAddAccessAllowedAce, essa rotina define os sinalizadores ace de herança.
Para obter mais informações sobre segurança e controle de acesso, consulte modelo de segurança do Windows para desenvolvedores de driver e a documentação sobre esses tópicos no SDK do Windows, como:
criando ou modificando um de ACL
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 |
da Plataforma de Destino | Universal |
cabeçalho | ntifs.h (inclua Ntifs.h, FltKernel.h) |
biblioteca | NtosKrnl.lib |
de DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |