Compartir a través de


Función RtlAddAccessAllowedAce (ntifs.h)

La rutina RtlAddAccessAllowedAce agrega una entrada de control de acceso permitida (ACE) a una lista de control de acceso (ACL). El acceso se concede al identificador de seguridad (SID) especificado.

Sintaxis

NTSYSAPI NTSTATUS RtlAddAccessAllowedAce(
  [in, out] PACL        Acl,
  [in]      ULONG       AceRevision,
  [in]      ACCESS_MASK AccessMask,
  [in]      PSID        Sid
);

Parámetros

[in, out] Acl

Puntero a un búfer asignado por el autor de la llamada que contiene la ACL que se va a modificar. RtlAddAccessAllowedAce agrega una ACE permitida por el acceso al final de esta ACL. La ACE está en forma de una estructura ACCESS_ALLOWED_ACE.

[in] AceRevision

Nivel de revisión de ACL de la ACE que se va a agregar. Los requisitos de versión de Windows son los siguientes:

Valor Significado
ACL_REVISION
Nivel de revisión válido en todas las versiones de Windows.
ACL_REVISION_DS
Nivel de revisión válido a partir de Windows 2000.
NotaAceRevision debe ser ACL_REVISION_DS si la ACL de Acl contiene una ACE específica del objeto.
 

[in] AccessMask

Máscara de bits de una o varias marcas de ACCESS_MASK que especifican los derechos de acceso que se van a conceder al SID especificado. Para obtener más información, vea la descripción del parámetro de DesiredAccess de ZwCreateFile.

[in] Sid

Puntero a la estructura de SID que representa una cuenta de usuario, grupo o inicio de sesión a la que se concede acceso.

Valor devuelto

RtlAddAccessAllowedAce puede devolver uno de los siguientes valores:

Código devuelto Descripción
STATUS_SUCCESS
La ACE se agregó correctamente.
STATUS_ALLOTTED_SPACE_EXCEEDED
Una nueva ACE no cabe en la ACL. Se requiere un búfer de ACL mayor. Consulte RtlCreateAcl para obtener información sobre cómo calcular el tamaño de una ACL.
STATUS_INVALID_ACL
La ACL especificada no tiene el formato correcto.
STATUS_INVALID_SID
La estructura de SID especificada no es estructuralmente válida.
STATUS_REVISION_MISMATCH
La revisión especificada no se conoce o no es compatible con la de la ACL.

Observaciones

Para obtener más información sobre la seguridad y el control de acceso, consulte modelo de seguridad de Windows para desarrolladores de controladores y la documentación sobre estos temas en Windows SDK.

Requisitos

Requisito Valor
de la plataforma de destino de Universal
encabezado de ntifs.h (incluya Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL < DISPATCH_LEVEL

Consulte también

ACCESS_ALLOWED_ACE

ACCESS_MASK

ACE de

de ACL

RtlCreateAcl

rtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

RtlLengthSecurityDescriptor

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

RtlValidSecurityDescriptor

de SID

seAssignSecurity

ZwCreateFile