Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La rutina RtlSetDaclSecurityDescriptor establece la información DACL de un descriptor de seguridad de formato absoluto, o si ya hay una DACL presente en el descriptor de seguridad, se sustituye.
Sintaxis
NTSYSAPI NTSTATUS RtlSetDaclSecurityDescriptor(
[in, out] PSECURITY_DESCRIPTOR SecurityDescriptor,
[in] BOOLEAN DaclPresent,
[in, optional] PACL Dacl,
[in, optional] BOOLEAN DaclDefaulted
);
Parámetros
[in, out] SecurityDescriptor
Puntero a una estructura SECURITY_DESCRIPTOR . Esta estructura es el descriptor de seguridad al que se va a aplicar la DACL.
[in] DaclPresent
Indica si hay una DACL presente en el descriptor de seguridad. Si este parámetro es FALSE, RtlSetDaclSecurityDescriptor establece la marca de control SE_DACL_PRESENT en el descriptor de seguridad en FALSE. En este caso, se omiten los parámetros opcionales restantes (Dacl y DaclDefaulted). Si DaclPresent es TRUE, la marca SE_DACL_PRESENT del descriptor de seguridad se establece en TRUE y no se omiten los parámetros opcionales restantes. Para obtener más información sobre la marca de SE_DACL_PRESENT, consulte SECURITY_DESCRIPTOR_CONTROL.
[in, optional] Dacl
Puntero a la DACL para el descriptor de seguridad. Si este parámetro es NULL, el puntero DACL del descriptor de seguridad se establece en NULL. Un puntero DACL NULL concede incondicionalmente todo el acceso a un objeto y no es el mismo que una DACL vacía. Una DACL vacía deniega todo el acceso a un objeto . Si Dacl no es NULL, el descriptor de seguridad hace referencia a la estructura de ACL proporcionada por el autor de la llamada, pero no se copia en . El autor de la llamada puede asignar la estructura de ACL desde la memoria del sistema paginada y puede llamar a la rutina RtlCreateAcl para inicializar la estructura.
❗ADVERTENCIA❗ Si se establece una DACL NULA , se permite el acceso sin restricciones al objeto y, por lo tanto, solo se debe usar en escenarios estratégicos en los que una evaluación de seguridad haya validado que se trata de un resultado aceptable. Considere la posibilidad de usar una DACL vacía , que tiene como valor predeterminado todo el acceso denegado de forma predeterminada.
[in, optional] DaclDefaulted
Indica si el DACL se proporcionó mediante algún mecanismo predeterminado o si el autor de la llamada especificó explícitamente. Si este parámetro es TRUE, la DACL se proporcionó mediante un mecanismo predeterminado. Si DaclDefaulted es FALSE, el autor de la llamada especificó explícitamente la DACL. RtlSetDaclSecurityDescriptor copia el valor especificado para este parámetro en la marca de control SE_DACL_DEFAULTED en el descriptor de seguridad. Para obtener más información sobre la marca de SE_DACL_DEFAULTED, consulte SECURITY_DESCRIPTOR_CONTROL.
Valor devuelto
RtlSetDaclSecurityDescriptor puede devolver uno de los siguientes valores de estado.
| Código de retorno | Descripción |
|---|---|
|
La llamada se completó correctamente. |
|
Se desconoce la revisión del descriptor de seguridad. |
|
El descriptor de seguridad no es un descriptor de seguridad de formato absoluto. |
Requisitos
| Requisito | Valor |
|---|---|
| cliente mínimo admitido | Disponible a partir de Windows 2000. |
| de la plataforma de destino de | Universal |
| encabezado | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
| Biblioteca | NtosKrnl.lib |
| DLL de | NtosKrnl.exe (modo kernel); Ntdll.dll (modo de usuario) |
| irQL | PASSIVE_LEVEL |