FLT_PARAMETERS per l'unione IRP_MJ_QUERY_SECURITY

Componente unione usato quando il campo MajorFunction della struttura di FLT_IO_PARAMETER_BLOCK per l'operazione è IRP_MJ_QUERY_SECURITY.

Sintassi

typedef union _FLT_PARAMETERS {
  ...    ;
  struct {
    SECURITY_INFORMATION    SecurityInformation;
    ULONG POINTER_ALIGNMENT Length;
    PVOID                   SecurityBuffer;
    PDML                    MdlAddress;
  } QuerySecurity;
  ...    ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;

Members

  • QuerySecurity: struttura contenente i membri seguenti.

  • SecurityInformation: puntatore a un chiamante fornito SECURITY_INFORMATION valore che specifica le informazioni di sicurezza da eseguire. I tipi validi sono:

    Valore securityInformation Significato
    OWNER_SECURITY_INFORMATION L'identificatore proprietario dell'oggetto viene sottoposto a query. Richiede l'accesso READ_CONTROL.
    GROUP_SECURITY_INFORMATION L'identificatore del gruppo primario dell'oggetto viene eseguito una query. Richiede l'accesso READ_CONTROL.
    DACL_SECURITY_INFORMATION Viene eseguito una query sull'elenco di controllo degli accessi discrezionali dell'oggetto. Richiede l'accesso READ_CONTROL.
    SACL_SECURITY_INFORMATION L'ACL di sistema (SACL) dell'oggetto viene eseguito una query. Richiede ACCESS_SYSTEM_SECURITY accesso.
  • Lunghezza: lunghezza, in byte, del buffer a cui punta SecurityBuffer .

  • SecurityBuffer: puntatore a un buffer di output fornito dal chiamante che riceve una copia del descrittore di sicurezza dell'oggetto specificato. Il processo chiamante deve avere il diritto di visualizzare gli aspetti specificati dello stato di sicurezza dell'oggetto. La struttura SECURITY_DESCRIPTOR viene restituita in formato auto-relativo . Questo membro è facoltativo e può essere NULL se viene fornito un MDL in MdlAddress. Vedere Osservazioni.

  • MdlAddress: indirizzo di un elenco di descrittori di memoria (MDL) che descrive il buffer a cui punta SecurityBuffer . Questo membro è facoltativo e può essere NULL se viene fornito un buffer in SecurityBuffer. Vedere Osservazioni.

Commenti

La struttura FLT_PARAMETERS per le operazioni IRP_MJ_QUERY_SECURITY contiene i parametri per un'operazione query-security-information basata su IRP rappresentata da una struttura di callback (FLT_CALLBACK_DATA). È contenuto in una struttura di FLT_IO_PARAMETER_BLOCK .

Se vengono forniti sia un buffer SecurityBuffer che MdlAddress , è consigliabile che i minifiltri usino MDL. La memoria che SecurityBuffer punta a è valida quando si tratta di un indirizzo in modalità utente a cui si accede nel contesto del processo chiamante o se si tratta di un indirizzo in modalità kernel.

Se un minifiltro modifica il valore di MdlAddress, dopo il callback dell'operazione successiva, Filter Manager libera l'MDL attualmente archiviato in MdlAddress e ripristina il valore precedente di MdlAddress.

In Windows XP e versioni successive l'oggetto che il membro TargetFileObject della struttura FLT_IO_PARAMETER_BLOCK punta a può rappresentare un flusso di dati denominato. Per altre informazioni sui flussi di dati denominati, vedere FILE_STREAM_INFORMATION.

IRP_MJ_QUERY_SECURITY è un'operazione basata su IRP.

Requisiti

Tipo di requisito Requisito
Intestazione Fltkernel.h (include Fltkernel.h)

Vedi anche

FILE_STREAM_INFORMATION

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_PARAMETERS

IRP_MJ_QUERY_SECURITY

SECURITY_DESCRIPTOR

SECURITY_INFORMATION