Función RtlAddAccessAllowedAceEx (ntifs.h)
La rutina RtlAddAccessAllowedAceEx agrega una entrada de control de acceso permitido (ACE ) con marcas ACE de herencia a una lista de control de acceso (ACL). El acceso se concede al identificador de seguridad (SID) especificado.
Sintaxis
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
Puntero a un búfer asignado por el autor de la llamada que contiene la ACL que se va a modificar. RtlAddAccessAllowedAceEx 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 del ACE que se va a agregar. Este valor puede ser ACL_REVISION o ACL_REVISION_DS. Debe ser ACL_REVISION_DS si la ACL contiene una ACE específica del objeto.
[in] AceFlags
Máscara de bits que especifica las marcas heredadas de la ACE que se va a agregar.
[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
RtlAddAccessAllowedAceEx 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. Para obtener más información sobre cómo calcular el tamaño de una ACL, vea RtlCreateAcl. |
STATUS_INVALID_ACL | La ACL especificada no tiene el formato correcto. |
STATUS_INVALID_PARAMETER | El parámetro AceFlags no era válido. |
STATUS_INVALID_SID | La estructura de SID especificada no es estructuralmente válida. |
STATUS_REVISION_MISMATCH | El AceRevision especificado no se conoce o no es compatible con el de la ACL. |
Comentarios
A diferencia de RtlAddAccessAllowedAce, esta rutina establece las marcas ACE de herencia.
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, como:
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 |
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Ntifs.h, FltKernel.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |