Fonction AllocateAndInitializeSid (securitybaseapi.h)

La fonction AllocateAndInitializeSid alloue et initialise un identificateur de sécurité (SID) avec jusqu’à huit sous-entités.

Syntaxe

BOOL AllocateAndInitializeSid(
  [in]  PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
  [in]  BYTE                      nSubAuthorityCount,
  [in]  DWORD                     nSubAuthority0,
  [in]  DWORD                     nSubAuthority1,
  [in]  DWORD                     nSubAuthority2,
  [in]  DWORD                     nSubAuthority3,
  [in]  DWORD                     nSubAuthority4,
  [in]  DWORD                     nSubAuthority5,
  [in]  DWORD                     nSubAuthority6,
  [in]  DWORD                     nSubAuthority7,
  [out] PSID                      *pSid
);

Paramètres

[in] pIdentifierAuthority

Pointeur vers une structure SID_IDENTIFIER_AUTHORITY . Cette structure fournit la valeur d’autorité d’identificateur de niveau supérieur à définir dans le SID.

[in] nSubAuthorityCount

Spécifie le nombre de sous-autorisation à placer dans le SID. Ce paramètre identifie également le nombre de paramètres de sous-autorisation qui ont des valeurs significatives. Ce paramètre doit contenir une valeur comprise entre 1 et 8.

Par exemple, la valeur 3 indique que les valeurs de sous-autorisation spécifiées par les paramètres dwSubAuthority0, dwSubAuthority1 et dwSubAuthority2 ont des valeurs significatives et ignorent le reste.

[in] nSubAuthority0

Valeur de sous-autorisation à placer dans le SID.

[in] nSubAuthority1

Valeur de sous-autorisation à placer dans le SID.

[in] nSubAuthority2

Valeur de sous-autorisation à placer dans le SID.

[in] nSubAuthority3

Valeur de sous-autorisation à placer dans le SID.

[in] nSubAuthority4

Valeur de sous-autorisation à placer dans le SID.

[in] nSubAuthority5

Valeur de sous-autorisation à placer dans le SID.

[in] nSubAuthority6

Valeur de sous-autorisation à placer dans le SID.

[in] nSubAuthority7

Valeur de sous-autorisation à placer dans le SID.

[out] pSid

Pointeur vers une variable qui reçoit le pointeur vers la structure SID allouée et initialisée.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

Un SID alloué avec la fonction AllocateAndInitializeSid doit être libéré à l’aide de la fonction FreeSid .

Cette fonction crée un SID avec une valeur RID 32 bits. Pour les applications qui nécessitent des valeurs RID plus longues, utilisez CreateWellKnownSid.

Exemples

Pour obtenir un exemple qui utilise cette fonction, consultez Création d’un descripteur de sécurité pour un nouvel objet ou Prise de propriété de l’objet.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows XP [applications de bureau | applications UWP]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau | applications UWP]
Plateforme cible Windows
En-tête securitybaseapi.h (inclure Windows.h)
Bibliothèque Advapi32.lib
DLL Advapi32.dll

Voir aussi

Contrôle d’accès

Fonctions Access Control de base

FreeSid

GetSidIdentifierAuthority

InitializeSid

SID_IDENTIFIER_AUTHORITY

SID connus