NetGroupAdd, fonction (lmaccess.h)

La fonction NetGroupAdd crée un groupe global dans la base de données de sécurité, qui est la base de données du gestionnaire de comptes de sécurité (SAM) ou, dans le cas des contrôleurs de domaine, Active Directory.

Syntaxe

NET_API_STATUS NET_API_FUNCTION NetGroupAdd(
  [in]  LPCWSTR servername,
  [in]  DWORD   level,
  [in]  LPBYTE  buf,
  [out] LPDWORD parm_err
);

Paramètres

[in] servername

Pointeur vers une chaîne constante qui spécifie le nom DNS ou NetBIOS du serveur distant sur lequel la fonction doit s’exécuter. Si ce paramètre a la valeur NULL, l’ordinateur local est utilisé.

[in] level

Spécifie le niveau d’informations des données. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
0
Spécifie un nom de groupe global. Le paramètre buf contient un pointeur vers une structure GROUP_INFO_0 .
1
Spécifie un nom de groupe global et un commentaire. Le paramètre buf contient un pointeur vers une structure GROUP_INFO_1 .
2
Spécifie des informations détaillées sur le groupe global. Le paramètre buf contient un pointeur vers une structure GROUP_INFO_2 . Notez que sur Windows XP et versions ultérieures, il est recommandé d’utiliser GROUP_INFO_3 à la place.
3
Spécifie des informations détaillées sur le groupe global. Le paramètre buf contient un pointeur vers une structure GROUP_INFO_3 .

Windows 2000 : Ce niveau n’est pas pris en charge.

[in] buf

Pointeur vers une mémoire tampon qui contient les données. Le format de ces données dépend de la valeur du paramètre level . Pour plus d’informations, consultez Mémoires tampons de fonction de gestion réseau.

[out] parm_err

Pointeur vers une valeur qui reçoit l’index du premier membre de la structure d’informations de groupe globale en erreur quand ERROR_INVALID_PARAMETER est retourné. Si ce paramètre a la valeur NULL, l’index n’est pas retourné en cas d’erreur. Pour plus d’informations, consultez la fonction NetGroupSetInfo .

Valeur retournée

Si la fonction réussit, la valeur de retour est NERR_Success.

Si la fonction échoue, la valeur de retour peut être l’un des codes d’erreur suivants.

Code de retour Description
ERROR_ACCESS_DENIED
L’utilisateur n’a pas accès aux informations demandées.
NERR_InvalidComputer
Le nom d'ordinateur est non valide.
NERR_GroupExists
Le groupe global existe déjà.
NERR_NotPrimary
L’opération est autorisée uniquement sur le contrôleur de domaine principal du domaine.
ERROR_INVALID_LEVEL
La valeur spécifiée pour le paramètre level n’est pas valide.
NERR_SpeGroupOp
L’opération n’est pas autorisée sur certains groupes spéciaux. Ces groupes incluent des groupes d’utilisateurs, des groupes d’administration, des groupes locaux et des groupes invités.

Notes

Si vous programmez pour Active Directory, vous pouvez peut-être appeler certaines méthodes ADSI (Active Directory Service Interface) pour obtenir les mêmes fonctionnalités que celles que vous pouvez obtenir en appelant les fonctions de groupe d’administration réseau. Pour plus d’informations, consultez IADsGroup.

Si vous appelez cette fonction sur un contrôleur de domaine qui exécute Active Directory, l’accès est autorisé ou refusé en fonction de la liste de contrôle d’accès (ACL) pour l’objet sécurisable. La liste de contrôle d’accès par défaut autorise uniquement les administrateurs de domaine et les opérateurs de compte à appeler cette fonction. Sur un serveur ou une station de travail membre, seuls les administrateurs et les utilisateurs avec pouvoir peuvent appeler cette fonction. Pour plus d’informations, consultez Exigences de sécurité pour les fonctions de gestion réseau. Pour plus d’informations sur les ACL, les ACL et les jetons d’accès, consultez modèle Access Control.

Le descripteur de sécurité du conteneur utilisateur est utilisé pour effectuer l’case activée d’accès pour cette fonction. L’appelant doit être en mesure de créer des objets enfants de la classe de groupe. En règle générale, les appelants doivent également avoir un accès en écriture à l’ensemble de l’objet pour que les appels à cette fonction réussissent.

Les noms de compte d’utilisateur sont limités à 20 caractères et les noms de groupe à 256 caractères. En outre, les noms de comptes ne peuvent pas être arrêtés par un point et ils ne peuvent pas inclure de virgules ou d’un des caractères imprimables suivants : « , /, , , [, ], :, |, <, , >+, =, ?, *. Les noms ne peuvent pas non plus inclure de caractères dans la plage 1 à 31, qui ne sont pas imprimables.

Configuration requise

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête lmaccess.h (include Lm.h)
Bibliothèque Netapi32.lib
DLL Netapi32.dll

Voir aussi

GROUP_INFO_0

GROUP_INFO_1

GROUP_INFO_3

Fonctions de groupe

NetGroupAddUser

NetGroupDel

NetGroupDelUser

NetGroupSetInfo

Fonctions de gestion réseau

Vue d’ensemble de la gestion du réseau