Funzione NetGroupSetUsers (lmaccess.h)

La funzione NetGroupSetUsers imposta l'appartenenza per il gruppo globale specificato. Ogni utente specificato viene registrato come membro del gruppo globale. Gli utenti non specificati, ma che sono attualmente membri del gruppo globale, avranno revocato l'appartenenza.

Sintassi

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

Parametri

[in] servername

Puntatore a una stringa costante che specifica il nome DNS o NetBIOS del server remoto in cui deve essere eseguita la funzione. Se questo parametro è NULL, viene utilizzato il computer locale.

[in] groupname

Puntatore a una stringa costante che specifica il nome del gruppo globale di interesse. Per altre informazioni, vedere la sezione Osservazioni.

[in] level

Livello informativo dei dati. Questo parametro può avere uno dei valori seguenti.

Valore Significato
0
Il parametro buf punta a una matrice di strutture GROUP_USERS_INFO_0 che specificano i nomi utente.
1
Il parametro buf punta a una matrice di strutture GROUP_USERS_INFO_1 che specifica i nomi utente e gli attributi del gruppo.

[in] buf

Puntatore al buffer contenente i dati. Per altre informazioni, vedere Buffer delle funzioni di gestione di rete.

[in] totalentries

Numero di voci nel buffer a cui punta il parametro buf .

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene NERR_Success.

Se la funzione ha esito negativo, il valore restituito può essere uno dei codici di errore seguenti.

Codice restituito Descrizione
ERROR_ACCESS_DENIED
L'utente non ha accesso alle informazioni richieste.
ERROR_INVALID_LEVEL
Il livello di chiamata di sistema non è corretto. Questo errore viene restituito se il parametro di livello è stato specificato come valore diverso da 0 o 1.
ERROR_INVALID_PARAMETER
Parametro passato non valido. Questo errore viene restituito se il parametro totalentries non è valido.
ERROR_NOT_ENOUGH_MEMORY
Memoria insufficiente per completare l'operazione.
NERR_InvalidComputer
Il nome del computer non è valido.
NERR_NotPrimary
L'operazione è consentita solo nel controller di dominio primario del dominio.
NERR_GroupNotFound
Impossibile trovare il nome del gruppo globale.
NERR_InternalError
An internal error occurred.
NERR_SpeGroupOp
L'operazione non è consentita in determinati gruppi speciali. Questi gruppi includono gruppi di utenti, gruppi di amministratori, gruppi locali e gruppi guest.
NERR_UserNotFound
Impossibile trovare il nome utente.

Commenti

Se si chiama questa funzione in un controller di dominio che esegue Active Directory, l'accesso viene consentito o negato in base all'elenco di controllo di accesso (ACL) per l'oggetto a protezione diretta. L'elenco di controllo di accesso predefinito consente solo agli amministratori di dominio e agli operatori account di chiamare questa funzione. In un server membro o in una workstation, solo gli amministratori e Power Users possono chiamare questa funzione. Per altre informazioni, vedere Requisiti di sicurezza per le funzioni di gestione di rete. Per altre informazioni su ACL, ACL e token di accesso, vedere Controllo di accesso Model.

Il descrittore di sicurezza dell'oggetto Group viene utilizzato per eseguire il controllo di accesso per questa funzione.

È possibile sostituire l'appartenenza al gruppo globale con un elenco completamente nuovo di membri chiamando la funzione NetGroupSetUsers . La sequenza tipica di passaggi per eseguire questa operazione è la seguente.

Per sostituire l'appartenenza al gruppo globale

  1. Chiamare la funzione NetGroupGetUsers per recuperare l'elenco di appartenenze corrente.
  2. Modificare l'elenco di appartenenze restituito in modo da riflettere la nuova appartenenza.
  3. Chiamare la funzione NetGroupSetUsers per sostituire l'elenco di appartenenze precedente con il nuovo elenco di appartenenze.
Per concedere a un utente l'appartenenza a un gruppo globale esistente, è possibile chiamare la funzione NetGroupAddUser . Per rimuovere un utente da un gruppo globale, chiamare la funzione NetGroupDelUser .

I nomi degli account utente sono limitati a 20 caratteri e i nomi dei gruppi sono limitati a 256 caratteri. Inoltre, i nomi di account non possono essere terminati da un punto e non possono includere virgole o uno dei caratteri stampabili seguenti: ", /, , [, ], :, |, <, , >+, =, ;, ?, *. I nomi non possono includere anche caratteri nell'intervallo 1-31, che non sono stampabili.

Se si esegue la programmazione per Active Directory, è possibile chiamare determinati metodi ADSI (Active Directory Service Interface) per ottenere la stessa funzionalità che è possibile ottenere chiamando le funzioni del gruppo di gestione di rete. Per altre informazioni, vedere IADsGroup.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione lmaccess.h (include Lm.h)
Libreria Netapi32.lib
DLL Netapi32.dll

Vedi anche

GROUP_USERS_INFO_0

GROUP_USERS_INFO_1

Funzioni di gruppo

NetGroupAddUser

NetGroupDelUser

NetGroupGetUsers

NetUserGetGroups

NetUserSetGroups

Funzioni di gestione di rete

Panoramica della gestione della rete