Structure ACL (winnt.h)

La structure ACL est l’en-tête d’une liste de contrôle d’accès (ACL). Une liste de contrôle d’accès complète se compose d’une structure ACL suivie d’une liste ordonnée de zéro ou plus entrées de contrôle d’accès (AIC).

Syntaxe

typedef struct _ACL {
  BYTE AclRevision;
  BYTE Sbz1;
  WORD AclSize;
  WORD AceCount;
  WORD Sbz2;
} ACL;

Membres

AclRevision

Spécifie le niveau de révision de l’ACL. Cette valeur doit être ACL_REVISION, sauf si l’ACL contient un ACE spécifique à un objet, auquel cas cette valeur doit être ACL_REVISION_DS. Tous les AES d’une liste de contrôle d’accès doivent être au même niveau de révision.

Sbz1

Spécifie un remplissage de zéro octet qui aligne le membre AclRevision sur une limite 16 bits.

AclSize

Spécifie la taille, en octets, de la liste de contrôle d’accès. Cette valeur inclut la structure ACL , tous les AE et la mémoire inutilisée potentielle.

AceCount

Spécifie le nombre d’AE stockées dans la liste de contrôle d’accès.

Sbz2

Spécifie deux zéro octets de remplissage qui alignent la structure ACL sur une limite 32 bits.

Remarques

Une liste de contrôle d’accès comprend une liste séquentielle de zéro ou plusieurs AE. Les points d’accès individuels d’une liste de contrôle d’accès sont numérotés de 0 à n, où n+1 correspond au nombre d’AES dans la liste de contrôle d’accès. Lors de la modification d’une liste de contrôle d’accès, une application fait référence à un ACE dans la liste de contrôle d’accès par l’index de l’ACE.

Il existe deux types de liste de contrôle d’accès : discrétionnaire et système.

Une liste de contrôle d’accès discrétionnaire (DACL) est contrôlée par le propriétaire d’un objet ou toute personne autorisée WRITE_DAC accès à l’objet. Il spécifie l’accès d’utilisateurs et de groupes particuliers à un objet. Par exemple, le propriétaire d’un fichier peut utiliser une liste dacl pour contrôler les utilisateurs et les groupes qui peuvent et ne peuvent pas avoir accès au fichier.

Un objet peut également avoir des informations de sécurité au niveau du système, sous la forme d’une liste de contrôle d’accès système (SACL) contrôlée par un administrateur système. Une liste de contrôle d’accès partagé permet à l’administrateur système d’auditer toute tentative d’accès à un objet.

Pour obtenir la liste des structures ACE actuellement définies, consultez ACE.

Une quatrième structure ACE, SYSTEM_ALARM_ACE, n’est actuellement pas prise en charge.

La structure ACL doit être traitée comme si elle était opaque et les applications ne doivent pas essayer de travailler directement avec ses membres. Pour s’assurer que les listes de contrôle d’accès sont sémantiquement correctes, les applications peuvent utiliser les fonctions répertoriées dans la section Voir aussi pour créer et manipuler des listes de contrôle d’accès.

Chaque ACL et chaque structure ACE commence sur une limite DWORD .

La taille maximale d’une liste de contrôle d’accès, y compris ses AE, est de 64 Ko.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
En-tête winnt.h (inclure Windows.h)

Voir aussi

AddAce

DeleteAce

GetAclInformation

GetSecurityDescriptorDacl

GetSecurityDescriptorSacl

InitializeAcl

IsValidAcl

SetAclInformation

SetSecurityDescriptorDacl

SetSecurityDescriptorSacl