IRP_MJ_SET_SECURITY (controladores de filtro y FS)
Cuándo se envió
El Administrador de E/S envía la solicitud de IRP_MJ_SET_SECURITY. Esta solicitud se puede enviar, por ejemplo, cuando una aplicación en modo de usuario ha llamado a una función Win32, como SetSecurityInfo.
Operación: controladores del sistema de archivos
El controlador del sistema de archivos debe extraer y descodificar el objeto de archivo para determinar si representa un archivo de usuario o un directorio abiertos. Si es así, el controlador debe procesar la solicitud y completar el IRP. De lo contrario, el controlador debe completar el IRP según corresponda sin procesar la solicitud.
Operación: controladores de filtro del sistema de archivos heredados
El controlador de filtro debe pasar este IRP al siguiente controlador inferior de la pila.
Parámetros
Un controlador de filtro o sistema de archivos llama a IoGetCurrentIrpStackLocation para que el IRP determinado obtenga un puntero a su propia ubicación de pila en el IRP. En los parámetros siguientes, Irp apunta al IRP e IrpSp apunta al IO_STACK_LOCATION. El controlador puede usar la información establecida en los siguientes miembros del IRP y la ubicación de la pila irP para procesar una solicitud de información de seguridad establecida:
DeviceObject es un puntero al objeto de dispositivo de destino.
Irp->IoStatus apunta a una estructura de IO_STATUS_BLOCK que recibe el estado de finalización final e información sobre la operación solicitada.
IrpSp->FileObject apunta al objeto de archivo asociado a DeviceObject.
El parámetro IrpSp-FileObject> contiene un puntero al campo RelatedFileObject, que también es una estructura de FILE_OBJECT. El campo RelatedFileObject de la estructura FILE_OBJECT no es válido durante el procesamiento de IRP_MJ_SET_SECURITY y no se debe usar.
IrpSp->MajorFunction se establece en IRP_MJ_SET_SECURITY.
IrpSp->Parameters.SetSecurity.SecurityDescriptor apunta a una estructura de SECURITY_DESCRIPTOR que contiene los valores de la información de seguridad que se va a asignar al objeto.
IrpSp->Parameters.SetSecurity.SecurityInformation es un valor de tipo SECURITY_INFORMATION que especifica qué información de seguridad se va a establecer en el descriptor de seguridad y puede ser uno de los siguientes valores.
Valor securityInformation | Significado |
---|---|
DACL_SECURITY_INFORMATION | Indica que se establece la lista de control de acceso discrecional (DACL) del objeto. Requiere acceso WRITE_DAC. |
GROUP_SECURITY_INFORMATION | Indica que se está configurando el identificador de grupo principal del objeto. Requiere acceso WRITE_OWNER. |
OWNER_SECURITY_INFORMATION | Indica que se está configurando el identificador de propietario del objeto. Requiere acceso WRITE_OWNER. |
SACL_SECURITY_INFORMATION | Indica que se está configurando la ACL del sistema (SACL) del objeto. Requiere acceso ACCESS_SYSTEM_SECURITY. |
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de