structure TRUSTEE_A (accctrl.h)

La structure TRUSTEE identifie le compte d’utilisateur, le compte de groupe ou la session d’ouverture de session auquel une entrée de contrôle d’accès (ACE) s’applique . La structure peut utiliser un nom ou un identificateur de sécurité (SID) pour identifier le fiduciaire.

Les fonctions de contrôle d’accès, telles que SetEntriesInAcl et GetExplicitEntriesFromAcl, utilisent cette structure pour identifier le compte d’ouverture de session associé aux informations de contrôle d’accès ou de contrôle d’audit dans une structure de EXPLICIT_ACCESS .

Syntaxe

typedef struct _TRUSTEE_A {
  struct _TRUSTEE_A          *pMultipleTrustee;
  MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation;
  TRUSTEE_FORM               TrusteeForm;
  TRUSTEE_TYPE               TrusteeType;
  union {
    LPSTR              ptstrName;
    SID                *pSid;
    OBJECTS_AND_SID    *pObjectsAndSid;
    OBJECTS_AND_NAME_A *pObjectsAndName;
  };
  LPCH                       ptstrName;
} TRUSTEE_A, *PTRUSTEE_A, TRUSTEEA, *PTRUSTEEA;

Membres

pMultipleTrustee

Pointeur vers une structure TRUSTEE qui identifie un compte de serveur qui peut emprunter l’identité de l’utilisateur identifié par le membre ptstrName . Ce membre n’est actuellement pas pris en charge et doit avoir la valeur NULL.

MultipleTrusteeOperation

Valeur du type d’énumération MULTIPLE_TRUSTEE_OPERATION . Actuellement, ce membre doit être NO_MULTIPLE_TRUSTEE.

TrusteeForm

Valeur du TRUSTEE_FORM type d’énumération qui indique le type de données pointée par le membre ptstrName .

TrusteeType

Valeur du TRUSTEE_TYPE type d’énumération qui indique si l’administrateur est un compte d’utilisateur, un compte de groupe ou un type de compte inconnu.

ptstrName

Pointeur vers une mémoire tampon qui identifie le fiduciaire et, éventuellement, contient des informations sur les AE spécifiques à l’objet. Le type de données dépend de la valeur du membre TrusteeForm .

Ce membre peut être l’une des valeurs suivantes.

Valeur Signification
TRUSTEE_IS_NAME
Pointeur vers une chaîne terminée par null qui contient le nom du fiduciaire.
TRUSTEE_IS_OBJECTS_AND_NAME
Pointeur vers une structure OBJECTS_AND_NAME qui contient le nom du fiduciaire et les noms des types d’objets dans un ACE spécifique à un objet.
TRUSTEE_IS_OBJECTS_AND_SID
Pointeur vers une structure OBJECTS_AND_SID qui contient le SID du fiduciaire et les GUID des types d’objets dans un ACE spécifique à un objet.
TRUSTEE_IS_SID
Pointeur vers le SID du fiduciaire.

pSid

pObjectsAndSid

pObjectsAndName

Remarques

Un nom de fiduciaire peut avoir l’un des formats suivants :

  • Nom complet, tel que « g :\remotedir\abc ».
  • Un compte de domaine, tel que « domain1\xyz ».
  • Un des noms de groupe prédéfinis, tels que « TOUT LE MONDE » ou « INVITÉ ».
  • Un des noms spéciaux suivants.
    Nom Signification
    GROUPE CRÉATEUR Le SID CREATOR_GROUP est un SID utilisé dans les AE hérités. Lorsqu’un nouvel objet est créé, le système remplace ce SID par le SID de groupe principal de l’utilisateur qui a créé l’objet.
    CREATOR OWNER Le SID CREATOR_OWNER est un SID utilisé dans les AE hérités. Lorsqu’un nouvel objet est créé, le système remplace ce SID par le SID de l’utilisateur qui a créé l’objet.
    CURRENT_USER Propriétaire du thread ou du processus appelant.
     
Un SID fiduciaire peut être n’importe quel SID d’utilisateur ou de groupe. Il peut également s’agir de l’un des SID universels et connus. Pour plus d’informations, consultez Identificateurs de sécurité.

Notes

L’en-tête accctrl.h définit TRUSTEE_ 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]
En-tête accctrl.h

Voir aussi

ACL

EXPLICIT_ACCESS

GetExplicitEntriesFromAcl

MULTIPLE_TRUSTEE_OPERATION

OBJECTS_AND_NAME

OBJECTS_AND_SID

SID

SetEntriesInAcl

TRUSTEE_FORM

TRUSTEE_TYPE