Fonction FltBuildDefaultSecurityDescriptor (fltkernel.h)
FltBuildDefaultSecurityDescriptor génère un descripteur de sécurité par défaut à utiliser avec FltCreateCommunicationPort.
Syntaxe
NTSTATUS FLTAPI FltBuildDefaultSecurityDescriptor(
[out] PSECURITY_DESCRIPTOR *SecurityDescriptor,
[in] ACCESS_MASK DesiredAccess
);
Paramètres
[out] SecurityDescriptor
Pointeur vers une variable allouée par l’appelant qui reçoit un pointeur opaque vers le SECURITY_DESCRIPTOR nouvellement créé.
[in] DesiredAccess
Masque de bits d’indicateurs qui spécifient le type d’accès requis par l’appelant à l’objet de port. L’ensemble d’indicateurs DesiredAccess définis par le système détermine les droits d’accès spécifiques suivants pour les objets de port de communication du pilote minifilter.
Indicateurs DesiredAccess | Signification |
---|---|
FLT_PORT_CONNECT | L’appelant peut se connecter au port. |
FLT_PORT_ALL_ACCESS | FLT_PORT_CONNECT | STANDARD_RIGHTS_ALL |
Valeur retournée
FltBuildDefaultSecurityDescriptor retourne STATUS_SUCCESS ou une valeur NTSTATUS appropriée, par exemple :
Code de retour | Description |
---|---|
|
FltBuildDefaultSecurityDescriptor a rencontré un échec d’allocation de pool. Il s’agit d’un code d’erreur. |
Remarques
Lors de la création d’un port de communication du pilote minifilter, un pilote minifilter peut appeler FltBuildDefaultSecurityDescriptor pour créer un descripteur de sécurité par défaut pour le port. Le pilote minifilter crée ensuite le port en appelant InitializeObjectAttributes et FltCreateCommunicationPort. Le descripteur de sécurité est passé en tant que paramètre à InitializeObjectAttributes.
FltBuildDefaultSecurityDescriptor permet au système d’allouer un descripteur de sécurité par défaut à partir d’un pool paginé. Lorsque ce descripteur de sécurité est appliqué à un objet, seuls les utilisateurs disposant de privilèges système ou administrateur ont accès à l’objet.
Les pilotes Minifilter appellent généralement FltBuildDefaultSecurityDescriptor immédiatement avant d’appeler FltCreateCommunicationPort et FltFreeSecurityDescriptor immédiatement après avoir appelé FltCreateCommunicationPort.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
En-tête | fltkernel.h (inclure Fltkernel.h) |
Bibliothèque | FltMgr.lib |
IRQL | <= APC_LEVEL |