NetLocalGroupSetMembers, fonction (lmaccess.h)

La fonction NetLocalGroupSetMembers définit l’appartenance au groupe local spécifié. Chaque utilisateur ou groupe global spécifié est fait membre du groupe local. Les utilisateurs ou groupes globaux qui ne sont pas spécifiés mais qui sont actuellement membres du groupe local verront leur appartenance révoquée.

Syntaxe

NET_API_STATUS NET_API_FUNCTION NetLocalGroupSetMembers(
  [in] LPCWSTR servername,
  [in] LPCWSTR groupname,
  [in] DWORD   level,
  [in] LPBYTE  buf,
  [in] DWORD   totalentries
);

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] groupname

Pointeur vers une chaîne constante qui spécifie le nom du groupe local dans lequel les utilisateurs ou groupes globaux spécifiés doivent être membres. Pour plus d'informations, consultez la section Notes qui suit.

[in] level

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

Valeur Signification
0
Spécifie l’identificateur de sécurité (SID) associé à un membre de groupe local. Le paramètre buf pointe vers un tableau de structures LOCALGROUP_MEMBERS_INFO_0 .
3
Spécifie les noms de compte et de domaine du membre du groupe local. Le paramètre buf pointe vers un tableau de structures LOCALGROUP_MEMBERS_INFO_3 .

[in] buf

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

[in] totalentries

Spécifie une valeur qui contient le nombre total d’entrées dans la mémoire tampon pointée par le paramètre buf .

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
NERR_GroupNotFound
Le groupe spécifié par le paramètre groupname n’existe pas.
ERROR_ACCESS_DENIED
L’utilisateur n’a pas accès aux informations demandées.
ERROR_NO_SUCH_MEMBER
Un ou plusieurs des membres n’existent pas. L’appartenance au groupe local n’a pas été modifiée.
ERROR_INVALID_MEMBER
Un ou plusieurs des membres ne peuvent pas être ajoutés, car il a un type de compte non valide. L’appartenance au groupe local n’a pas été modifiée.

Remarques

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) de 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 membre ou une station de travail, 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 listes de contrôle d’accès, les ACL et les jetons d’accès, consultez Access Control Modèle.

Le descripteur de sécurité de l’objet LocalGroup est utilisé pour effectuer l’case activée d’accès pour cette fonction.

Vous pouvez remplacer l’appartenance au groupe local par une liste entièrement nouvelle de membres en appelant la fonction NetLocalGroupSetMembers . La séquence classique d’étapes à effectuer est la suivante.

Pour remplacer l’appartenance au groupe local

  1. Appelez la fonction NetLocalGroupGetMembers pour récupérer la liste d’appartenances actuelle.
  2. Modifiez la liste d’appartenances retournée pour refléter la nouvelle appartenance.
  3. Appelez la fonction NetLocalGroupSetMembers pour remplacer l’ancienne liste d’appartenances par la nouvelle liste d’appartenances.
Pour ajouter un ou plusieurs comptes d’utilisateur existants ou de groupes globaux à un groupe local existant, vous pouvez appeler la fonction NetLocalGroupAddMembers . Pour supprimer un ou plusieurs membres d’un groupe local existant, appelez la fonction NetLocalGroupDelMembers .

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

Si vous programmez pour Active Directory, vous pourrez 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 local de gestion réseau. Pour plus d’informations, consultez IADsGroup.

Configuration requise

Condition requise Valeur
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

LOCALGROUP_MEMBERS_INFO_0

LOCALGROUP_MEMBERS_INFO_3

Fonctions de groupe locales

NetLocalGroupAddMembers

NetLocalGroupDelMembers

NetLocalGroupGetMembers

Fonctions de gestion réseau

Vue d’ensemble de la gestion du réseau