Partager via


Ordre des ACL dans une liste de contrôle d’accès

Lorsqu’unprocessustente d’accéder à un objet sécurisable, le système passe par les entrées de contrôle d’accès (AE) dans la liste de contrôle d’accès discrétionnaire de l’objet (DACL) jusqu’à ce qu’elle trouve les ACL qui autorisent ou refusent l’accès demandé. Les droits d’accès qu’une liste de contrôle d’accès autorise un utilisateur peuvent varier en fonction de l’ordre des ACL dans la liste de contrôle d’accès. Par conséquent, le système d’exploitation Windows XP définit un ordre préféré pour les ACL dans la liste dacl d’un objet sécurisable. L’ordre préféré fournit un framework simple qui garantit qu’un ACE refusé par accès refuse réellement l’accès. Pour plus d’informations sur l’algorithme du système pour la vérification de l’accès, consultez How DACLs Control Access to an Object.

Pour Windows Server 2003 et Windows XP, l’ordre approprié des AE est compliqué par l’introduction d’ACL spécifiques à l’objet et de l’héritage automatique.

Les étapes suivantes décrivent l’ordre préféré :

  1. Toutes les ACL explicites sont placées dans un groupe avant les AE héritées.
  2. Dans le groupe d’AE explicites, les AE refusées par accès sont placées avant les ACL autorisées par l’accès.
  3. Les AE héritées sont placées dans l’ordre dans lequel elles sont héritées. Les ACL héritées du parent de l’objet enfant viennent en premier, puis les ACL héritées du grand-parent, et ainsi de suite sur l’arborescence des objets.
  4. Pour chaque niveau d’AE hérité, les AE refusées par accès sont placées avant les AE autorisées par l’accès.

Bien sûr, tous les types ACE ne sont pas obligatoires dans une liste de contrôle d’accès.

Les fonctions telles que AddAccessAllowedAceEx et AddAccessAllowedObjectAce ajouter un ACE à la fin d’une liste de contrôle d’accès. Il incombe à l’appelant de s’assurer que les AE sont ajoutées dans l’ordre approprié.