Partager via


BuildExplicitAccessWithNameA, fonction (aclapi.h)

La fonction BuildExplicitAccessWithName initialise une structure de EXPLICIT_ACCESS avec les données spécifiées par l’appelant. Le fiduciaire est identifié par une chaîne de nom.

Syntaxe

void BuildExplicitAccessWithNameA(
  [in, out]      PEXPLICIT_ACCESS_A pExplicitAccess,
  [in, optional] LPSTR              pTrusteeName,
  [in]           DWORD              AccessPermissions,
  [in]           ACCESS_MODE        AccessMode,
  [in]           DWORD              Inheritance
);

Paramètres

[in, out] pExplicitAccess

Pointeur vers une structure EXPLICIT_ACCESS à initialiser. La fonction BuildExplicitAccessWithName n’alloue pas de mémoire. Ce paramètre ne peut pas avoir la valeur NULL.

[in, optional] pTrusteeName

Pointeur vers une chaîne terminée par null qui contient le nom du fiduciaire du membre ptstrName de la structure TRUSTEE . La fonction BuildExplicitAccessWithName définit les autres membres de la structure TRUSTEE comme suit.

Valeur Signification
pMultipleTrustee
NULL
MultipleTrusteeOperation
NO_MULTIPLE_TRUSTEE
TrusteeForm
TRUSTEE_IS_NAME
TrusteeType
TRUSTEE_IS_UNKNOWN

[in] AccessPermissions

Spécifie un masque d’accès pour le membre grfAccessPermissions de la structure EXPLICIT_ACCESS . Le masque est un ensemble d’indicateurs de bits qui utilisent le format ACCESS_MASK pour spécifier les droits d’accès qu’un ACE autorise, refuse ou audite pour le fiduciaire. Les fonctions qui utilisent la structure EXPLICIT_ACCESS ne convertissent pas, n’interprètent ni ne valident les bits de ce masque.

[in] AccessMode

Spécifie un mode d’accès pour le membre grfAccessMode de la structure EXPLICIT_ACCESS . Le mode d’accès indique si l’entrée de contrôle d’accès (ACE) autorise, refuse ou audite les droits spécifiés. Pour une liste de contrôle d’accès discrétionnaire (DACL), ce paramètre peut être l’une des valeurs de l’énumération ACCESS_MODE . Pour une liste de contrôle d’accès système (SACL), ce paramètre peut être une combinaison de valeurs ACCESS_MODE .

[in] Inheritance

Spécifie un type d’héritage pour le membre grfInheritance de la structure EXPLICIT_ACCESS . Cette valeur est un ensemble d’indicateurs de bits qui déterminent si d’autres conteneurs ou objets peuvent hériter de l’ACE de l’objet principal auquel l’ACL est attachée. La valeur de ce membre correspond à la partie d’héritage (octet de bas ordre) du membre AceFlags de la structure ACE_HEADER . Ce paramètre peut être NO_INHERITANCE pour indiquer que l’ACE n’est pas héritable, ou il peut s’agir d’une combinaison des valeurs suivantes.

Valeur Signification
CONTAINER_INHERIT_ACE
D’autres conteneurs contenus par l’objet principal héritent de l’ACE.
INHERIT_ONLY_ACE
L’ACE ne s’applique pas à l’objet principal auquel l’ACL est attachée, mais les objets contenus par l’objet principal héritent de l’ACE.
NO_PROPAGATE_INHERIT_ACE
Les indicateurs OBJECT_INHERIT_ACE et CONTAINER_INHERIT_ACE ne sont pas propagés à un ACE hérité.
OBJECT_INHERIT_ACE
Les objets non-contenus contenus par l’objet principal héritent de l’ACE.
SUB_CONTAINERS_AND_OBJECTS_INHERIT
Les conteneurs et les objets non-contenants qui sont contenus par l’objet principal héritent de l’ACE. Cet indicateur correspond à la combinaison des indicateurs CONTAINER_INHERIT_ACE et OBJECT_INHERIT_ACE.
SUB_CONTAINERS_ONLY_INHERIT
D’autres conteneurs contenus par l’objet principal héritent de l’ACE. Cet indicateur correspond à la combinaison des indicateurs CONTAINER_INHERIT_ACE et INHERIT_ONLY_ACE .
SUB_OBJECTS_ONLY_INHERIT
Les objets non-contenus contenus par l’objet principal héritent de l’ACE. Cet indicateur correspond à la combinaison des indicateurs OBJECT_INHERIT_ACE et INHERIT_ONLY_ACE .

Valeur de retour

None

Remarques

Notes

L’en-tête aclapi.h définit BuildExplicitAccessWithName comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

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]
Plateforme cible Windows
En-tête aclapi.h
Bibliothèque Advapi32.lib
DLL Advapi32.dll

Voir aussi

ACE

ACL

Vue d’ensemble du contrôle d’accès

Fonctions Access Control de base

EXPLICIT_ACCESS

GetExplicitEntriesFromAcl

SetEntriesInAcl

FIDUCIAIRE