Partager via


Spécification des droits d’accès

Le type ACCESS_MASK est un masque de bits qui spécifie un ensemble de droits d’accès dans le masque d’accès d’une entrée de contrôle d’accès.

typedef ULONG  ACCESS_MASK;

Les droits d’accès spécifiques standard suivants s’appliquent à tous les types d’objets exécutifs.

Indicateur Description

Suppression

L’appelant peut supprimer l’objet .

READ_CONTROL

L’appelant peut lire la liste de contrôle d’accès (ACL) et les informations de propriété du fichier.

SYNCHRONIZE

L’appelant peut effectuer une opération d’attente sur l’objet . (Par exemple, l’objet peut être passé à KeWaitForMultipleObjects.)

WRITE_DAC

L’appelant peut modifier les informations de la liste de contrôle d’accès discrétionnaire (DACL) pour l’objet.

WRITE_OWNER

L’appelant peut modifier les informations de propriété du fichier.

Notez que, normalement, seuls DELETE et SYNCHRONIZE sont intéressants pour les enregistreurs de pilotes.

Vous pouvez également spécifier les droits d’accès génériques suivants. Ceux-ci s’appliquent également à tous les types d’objets exécutifs. La signification de chaque droit d’accès générique est spécifique à ce type d’objet.

Indicateur Description

GENERIC_READ

L’appelant peut effectuer des opérations de lecture normales sur l’objet .

GENERIC_WRITE

L’appelant peut effectuer des opérations d’écriture normales sur l’objet .

GENERIC_EXECUTE

L’appelant peut exécuter l’objet . (Notez que cela n’a généralement de sens que pour certains types d’objets, tels que les objets fichier et les objets de section.)

GENERIC_ALL

L’appelant peut effectuer toutes les opérations normales sur l’objet .

Les combinaisons suivantes de droits d’accès spécifiques standard sont également définies. Ceux-ci ne sont normalement pas utilisés directement, mais sont utilisés comme modèles pour définir d’autres masques de bits. (Par exemple, lorsque vous spécifiez GENERIC_READ pour un objet fichier, le système le mappe au masque de bits FILE_GENERIC_READ de droits d’accès spécifiques. FILE_GENERIC_READ est défini en termes de STANDARD_RIGHTS_READ.)

Masque Description

STANDARD_RIGHTS_READ

Droits spécifiques standard qui correspondent à GENERIC_READ

STANDARD_RIGHTS_WRITE

Droits spécifiques standard qui correspondent à GENERIC_WRITE

STANDARD_RIGHTS_EXECUTE

Droits spécifiques standard qui correspondent à GENERIC_EXECUTE

STANDARD_RIGHTS_REQUIRED

Droits spécifiques standard qui correspondent à GENERIC_ALL. Cela inclut DELETE, mais pas SYNCHRONIZE.

STANDARD_RIGHTS_ALL

Tous les droits d’accès standard.

Chaque type d’objet peut avoir ses propres droits d’accès supplémentaires. Pour obtenir une description des droits d’accès applicables à un fichier, un répertoire ou un appareil, consultez ZwCreateFile. Pour obtenir une description des droits d’accès applicables à un répertoire du gestionnaire d’objets, consultez ZwCreateDirectoryObject. Pour obtenir une description des droits d’accès applicables à une clé de Registre, consultez ZwCreateKey. Pour obtenir une description des droits d’accès applicables à un objet de section, consultez ZwOpenSection. Pour obtenir une description des droits d’accès applicables à un bloc de données WMI, consultez IoWMIOpenBlock.

Pour plus d’informations sur les droits d’accès, consultez les rubriques suivantes dans la documentation Microsoft Windows SDK :

Wdm.h (inclure Wdm.h, Ntddk.h ou Ntifs.h)

IoWMIOpenBlock
ZwCreateDirectoryObject
ZwCreateFile
ZwCreateKey
ZwOpenSection