Función RtlGetDaclSecurityDescriptor (ntifs.h)
La rutina RtlGetDaclSecurityDescriptor devuelve un puntero a la ACL discrecional (DACL) para un descriptor de seguridad.
Sintaxis
NTSYSAPI NTSTATUS RtlGetDaclSecurityDescriptor(
[in] PSECURITY_DESCRIPTOR SecurityDescriptor,
[out] PBOOLEAN DaclPresent,
[out] PACL *Dacl,
[out] PBOOLEAN DaclDefaulted
);
Parámetros
[in] SecurityDescriptor
Puntero al SECURITY_DESCRIPTOR cuya DACL se va a devolver.
[out] DaclPresent
Puntero a una variable booleana que indica la presencia de una DACL en el descriptor de seguridad especificado. Si esta variable recibe TRUE, el descriptor de seguridad contiene una DACL y los parámetros de salida restantes reciben valores válidos. Si esta variable recibe FALSE, el descriptor de seguridad no contiene una DACL y los parámetros de salida restantes no reciben valores válidos.
[out] Dacl
Puntero a una variable que recibe la dirección de la DACL para el descriptor de seguridad. Si el descriptor de seguridad no tiene una DACL, esta variable no recibe un valor. Si el descriptor de seguridad tiene una DACL NULL , esta variable recibe NULL. Una DACL NULL permite implícitamente todo el acceso a un objeto .
[out] DaclDefaulted
Puntero a una variable booleana que recibe el valor de la marca SE_DACL_DEFAULTED en la estructura SECURITY_DESCRIPTOR_CONTROL del descriptor de seguridad. Si esta marca es TRUE, la DACL se recuperó mediante un mecanismo predeterminado. Si es FALSE, un usuario especificó explícitamente la DACL. Este valor solo es válido si *Dacl recibe un valor distinto de NULL .
Valor devuelto
RtlGetDaclSecurityDescriptor devuelve STATUS_SUCCESS o un valor NTSTATUS adecuado, como el siguiente:
Código devuelto | Descripción |
---|---|
|
El nivel de revisión del descriptor de seguridad es desconocido o no se admite. Se trata de un código de error. |
Comentarios
Un valor de TRUE para *DaclPresent no significa que *Dacl sea distinto de NULL. Es decir, *DaclPresent puede ser TRUE mientras *Dacl es NULL, lo que significa que una DACL NULL está en vigor. Una DACL NULL permite implícitamente todo el acceso a un objeto y no es el mismo que una DACL vacía. Una DACL vacía no permite ningún acceso a un objeto.
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 |
---|---|
Cliente mínimo compatible | Windows Server 2003 SP1 |
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluya Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |