Función RtlAddAccessAllowedAce (ntifs.h)

La rutina RtlAddAccessAllowedAce agrega una entrada de control de acceso permitido (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 tiene la forma de una estructura ACCESS_ALLOWED_ACE.

[in] AceRevision

Nivel de revisión de ACL de la ACE que se va a agregar. Las solicitudes de versión de Windows son las 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 DesiredAccess de ZwCreateFile.

[in] Sid

Puntero a la estructura del 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 del 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.

Comentarios

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 Value
Plataforma de destino Universal
Encabezado ntifs.h (incluya Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

Consulte también

ACCESS_ALLOWED_ACE

ACCESS_MASK

AS

ACL

RtlCreateAcl

RtlCreateSecurityDescriptor

RtlCreateSecurityDescriptorRelative

RtlLengthSecurityDescriptor

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

RtlValidSecurityDescriptor

SID

SeAssignSecurity

ZwCreateFile