USER_INFO_4 struttura (lmaccess.h)

La struttura USER_INFO_4 contiene informazioni su un account utente, tra cui il nome dell'account, i dati delle password, il livello di privilegio, il percorso della home directory dell'utente, l'identificatore di sicurezza (SID) e altre statistiche di rete correlate all'utente.

Sintassi

typedef struct _USER_INFO_4 {
  LPWSTR usri4_name;
  LPWSTR usri4_password;
  DWORD  usri4_password_age;
  DWORD  usri4_priv;
  LPWSTR usri4_home_dir;
  LPWSTR usri4_comment;
  DWORD  usri4_flags;
  LPWSTR usri4_script_path;
  DWORD  usri4_auth_flags;
  LPWSTR usri4_full_name;
  LPWSTR usri4_usr_comment;
  LPWSTR usri4_parms;
  LPWSTR usri4_workstations;
  DWORD  usri4_last_logon;
  DWORD  usri4_last_logoff;
  DWORD  usri4_acct_expires;
  DWORD  usri4_max_storage;
  DWORD  usri4_units_per_week;
  PBYTE  usri4_logon_hours;
  DWORD  usri4_bad_pw_count;
  DWORD  usri4_num_logons;
  LPWSTR usri4_logon_server;
  DWORD  usri4_country_code;
  DWORD  usri4_code_page;
  PSID   usri4_user_sid;
  DWORD  usri4_primary_group_id;
  LPWSTR usri4_profile;
  LPWSTR usri4_home_dir_drive;
  DWORD  usri4_password_expired;
} USER_INFO_4, *PUSER_INFO_4, *LPUSER_INFO_4;

Members

usri4_name

Tipo: LPWSTR

Puntatore a una stringa Unicode che specifica il nome dell'account utente. Per la funzione NetUserSetInfo , questo membro viene ignorato.

usri4_password

Tipo: LPWSTR

Puntatore a una stringa Unicode che specifica la password per l'utente identificato dal membro usri4_name . La lunghezza non può superare i byte PWLEN. La funzione NetUserGetInfo restituisce un puntatore NULL per mantenere la sicurezza delle password.

Per convenzione, la lunghezza delle password è limitata a LM20_PWLEN caratteri.

usri4_password_age

Tipo: DWORD

Numero di secondi trascorsi dall'ultima modifica del membro usri4_password . Le funzioni NetUserAdd e NetUserSetInfo ignorano questo membro.

usri4_priv

Tipo: DWORD

Livello di privilegio assegnato al membro usri4_name . Le funzioni NetUserAdd e NetUserSetInfo ignorano questo membro. Questo membro può essere uno dei valori seguenti. Per altre informazioni sui diritti dell'account utente e del gruppo, vedere Privilegi.

Valore Significato
USER_PRIV_GUEST
Guest
USER_PRIV_USER
Utente
USER_PRIV_ADMIN
Amministratore

usri4_home_dir

Tipo: LPWSTR

Puntatore a una stringa Unicode che specifica il percorso della home directory dell'utente specificato dal membro usri4_name . La stringa può essere NULL.

usri4_comment

Tipo: LPWSTR

Puntatore a una stringa Unicode contenente un commento da associare all'account utente. La stringa può essere una stringa NULL oppure può avere un numero qualsiasi di caratteri prima del carattere Null terminante.

usri4_flags

Tipo: DWORD

Questo membro può essere uno o più dei valori seguenti.

Si noti che l'impostazione dei flag di controllo dell'account utente può richiedere determinati privilegi e controllare i diritti di accesso. Per altre informazioni, vedere la sezione Osservazioni della funzione NetUserSetInfo .

Valore Significato
UF_SCRIPT
Script di accesso eseguito. Questo valore deve essere impostato.
UF_ACCOUNTDISABLE
L'account dell'utente è disabilitato.
UF_HOMEDIR_REQUIRED
La home directory è obbligatoria. Questo valore viene ignorato.
UF_PASSWD_NOTREQD
Non è necessaria alcuna password.
UF_PASSWD_CANT_CHANGE
L'utente non può modificare la password.
UF_LOCKOUT
L'account è attualmente bloccato. È possibile chiamare la funzione NetUserSetInfo per cancellare questo valore e sbloccare un account bloccato in precedenza. Non è possibile usare questo valore per bloccare un account sbloccato in precedenza.
UF_DONT_EXPIRE_PASSWD
La password non deve mai scadere nell'account.
UF_ENCRYPTED_TEXT_PASSWORD_ALLOWED
La password dell'utente viene archiviata in crittografia reversibile in Active Directory.
UF_NOT_DELEGATED
Contrassegna l'account come "sensibile"; altri utenti non possono agire come delegati di questo account utente.
UF_SMARTCARD_REQUIRED
Richiede all'utente di accedere all'account utente con una smart card.
UF_USE_DES_KEY_ONLY
Limitare questa entità all'uso solo dei tipi di crittografia Data Encryption Standard (DES) per le chiavi.
UF_DONT_REQUIRE_PREAUTH
Questo account non richiede la preutenticazione Kerberos per l'accesso.
UF_TRUSTED_FOR_DELEGATION
L'account è abilitato per la delega. Si tratta di un'impostazione sensibile alla sicurezza; gli account con questa opzione abilitata devono essere controllati strettamente. Questa impostazione consente a un servizio in esecuzione nell'account di presupporre l'identità di un client e l'autenticazione come utente ad altri server remoti nella rete.
UF_PASSWORD_EXPIRED
La password dell'utente è scaduta.

Windows 2000: Questo valore viene ignorato.

UF_TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION
L'account è attendibile per autenticare un utente all'esterno del pacchetto di sicurezza Kerberos e delegare l'utente tramite delega vincolata. Si tratta di un'impostazione sensibile alla sicurezza; gli account con questa opzione abilitata devono essere controllati strettamente. Questa impostazione consente a un servizio in esecuzione nell'account di affermare l'identità di un client e di autenticarsi come utente per i servizi configurati in modo specifico nella rete.

Windows XP/2000: Questo valore viene ignorato.

 

I valori seguenti descrivono il tipo di account. È possibile impostare un solo valore. Non è possibile modificare il tipo di account usando la funzione NetUserSetInfo .

Valore Significato
UF_NORMAL_ACCOUNT
Si tratta di un tipo di account predefinito che rappresenta un utente tipico.
UF_TEMP_DUPLICATE_ACCOUNT
Si tratta di un account per gli utenti il cui account primario si trova in un altro dominio. Questo account fornisce all'utente l'accesso a questo dominio, ma non a un dominio che considera attendibile questo dominio. Gestione utenti fa riferimento a questo tipo di account come account utente locale.
UF_WORKSTATION_TRUST_ACCOUNT
Si tratta di un account computer per un computer membro di questo dominio.
UF_SERVER_TRUST_ACCOUNT
Si tratta di un account computer per un controller di dominio di backup membro di questo dominio.
UF_INTERDOMAIN_TRUST_ACCOUNT
Si tratta di un permesso di considerare attendibile l'account per un dominio che considera attendibile altri domini.

usri4_script_path

Tipo: LPWSTR

Puntatore a una stringa Unicode che specifica il percorso del file di script di accesso dell'utente. Il file di script può essere . File CMD, un file di .EXE o un file di .BAT. La stringa può anche essere NULL.

usri4_auth_flags

Tipo: DWORD

Privilegi dell'operatore dell'utente.

Per la funzione NetUserGetInfo , il valore appropriato viene restituito in base all'appartenenza al gruppo locale. Se l'utente è membro di Operatori di stampa, AF_OP_PRINT è impostato. Se l'utente è membro di Server Operators, AF_OP_SERVER è impostato. Se l'utente è membro degli operatori account, AF_OP_ACCOUNTS è impostato. AF_OP_COMM non è mai impostato.

Le funzioni NetUserAdd e NetUserSetInfo ignorano questo membro.

Questo membro può essere uno o più dei valori seguenti.

Valore Significato
AF_OP_PRINT
Il privilegio dell'operatore di stampa è abilitato.
AF_OP_COMM
Il privilegio dell'operatore di comunicazione è abilitato.
AF_OP_SERVER
Il privilegio dell'operatore server è abilitato.
AF_OP_ACCOUNTS
Il privilegio dell'operatore accounts è abilitato.

usri4_full_name

Tipo: LPWSTR

Puntatore a una stringa Unicode contenente il nome completo dell'utente. Questa stringa può essere una stringa NULL oppure può avere un numero qualsiasi di caratteri prima del carattere Null di terminazione.

usri4_usr_comment

Tipo: LPWSTR

Puntatore a una stringa Unicode contenente un commento utente. Questa stringa può essere una stringa NULL oppure può avere un numero qualsiasi di caratteri prima del carattere Null di terminazione.

usri4_parms

Tipo: LPWSTR

Puntatore a una stringa Unicode riservata per l'uso da parte delle applicazioni. Questa stringa può essere una stringa NULL oppure può avere un numero qualsiasi di caratteri prima del carattere Null di terminazione. I prodotti Microsoft usano questo membro per archiviare le informazioni di configurazione utente. Non modificare queste informazioni.

usri4_workstations

Tipo: LPWSTR

Importante

Non è più consigliabile usare usri4_workstations. È invece possibile controllare l'accesso alle workstation configurando le impostazioni assegnazione diritti utente (Consenti accesso locale e Nega accesso in locale oppure Consenti accesso tramite Servizi Desktop remoto e Nega accesso tramite Servizi Desktop remoto).

Puntatore a una stringa Unicode contenente i nomi delle workstation da cui l'utente può accedere. È possibile specificare fino a otto workstation; i nomi devono essere separati da virgole. Se non si vuole limitare il numero di workstation, usare una stringa NULL . Per disabilitare gli accessi da tutte le workstation a questo account, impostare il valore UF_ACCOUNTDISABLE nel membro usri4_flags .

usri4_last_logon

Tipo: DWORD

Data e ora dell'ultimo accesso. Questo valore viene archiviato come numero di secondi trascorsi dalle 00:00:00, 1 gennaio 1970, GMT. Questo membro viene ignorato dalle funzioni NetUserAdd e NetUserSetInfo .

Questo membro viene mantenuto separatamente in ogni controller di dominio di backup (BDC) nel dominio. Per ottenere un valore accurato, è necessario eseguire una query su ogni cluster big data nel dominio. L'ultimo accesso si è verificato al momento indicato dal valore recuperato più grande.

usri4_last_logoff

Tipo: DWORD

Questo membro non è attualmente utilizzato.

Data e ora in cui si è verificato l'ultimo logoff. Questo valore viene archiviato come numero di secondi trascorsi dalle 00:00:00, 1 gennaio 1970, GMT. Il valore zero indica che l'ora dell'ultima disconnessione è sconosciuta.

Questo membro viene mantenuto separatamente in ogni controller di dominio di backup (BDC) nel dominio. Per ottenere un valore accurato, è necessario eseguire una query su ogni cluster big data nel dominio. L'ultima disconnessione si è verificata al momento indicato dal valore recuperato più grande.

usri4_acct_expires

Tipo: DWORD

Data e ora di scadenza dell'account. Questo valore viene archiviato come numero di secondi trascorsi dalle 00:00:00, 1 gennaio 1970, GMT. Un valore di TIMEQ_FOREVER indica che l'account non scade mai.

usri4_max_storage

Tipo: DWORD

Quantità massima di spazio su disco che l'utente può usare. Specificare USER_MAXSTORAGE_UNLIMITED per usare tutto lo spazio disponibile su disco.

usri4_units_per_week

Tipo: DWORD

Numero di unità di tempo di uguale lunghezza in cui viene divisa la settimana. Questo valore è necessario per calcolare la lunghezza della stringa di bit nel membro usri4_logon_hours .

Questo valore deve essere UNITS_PER_WEEK per LAN Manager 2.0. Questo elemento viene ignorato dalle funzioni NetUserAdd e NetUserSetInfo .

Per le applicazioni di servizio, le unità devono essere uno dei valori seguenti: SAM_DAYS_PER_WEEK, SAM_HOURS_PER_WEEK o SAM_MINUTES_PER_WEEK.

usri4_logon_hours

Tipo: PBYTE

Puntatore a una stringa di bit a 21 byte (168 bit) che specifica i tempi durante i quali l'utente può accedere. Ogni bit rappresenta un'ora univoca nella settimana, in Greenwich Mean Time (GMT).

Il primo bit (bit 0, parola 0) è domenica, da 0:00 a 0:59; il secondo bit (bit 1, parola 0) è domenica, dalle 1:00 alle 1:59; E così via. Si noti che il bit 0 in word 0 rappresenta domenica dalle 0:00 alle 0:59 solo se si è nel fuso orario GMT. In tutti gli altri casi è necessario regolare i bit in base alla differenza di fuso orario (ad esempio, GMT meno 8 ore per l'ora solare del Pacifico).

Specificare un puntatore NULL in questo membro quando si chiama la funzione NetUserAdd per indicare nessuna restrizione temporale. Specificare un puntatore NULL quando si chiama la funzione NetUserSetInfo per indicare che non deve essere apportata alcuna modifica agli orari durante i quali l'utente può accedere.

usri4_bad_pw_count

Tipo: DWORD

Numero di tentativi di accesso dell'utente all'account usando una password errata. Il valore - 1 indica che il valore è sconosciuto. Le chiamate alle funzioni NetUserAdd e NetUserSetInfo ignorano questo membro.

Questo membro viene replicato dal controller di dominio primario (PDC); viene mantenuto anche in ogni controller di dominio di backup (BDC) nel dominio. Per ottenere un valore accurato, è necessario eseguire una query su ogni cluster big data nel dominio. Il numero di tentativi di accesso da parte dell'utente con una password errata è il valore più grande recuperato.

usri4_num_logons

Tipo: DWORD

Numero di volte in cui l'utente ha eseguito correttamente l'accesso a questo account. Il valore - 1 indica che il valore è sconosciuto. Le chiamate alle funzioni NetUserAdd e NetUserSetInfo ignorano questo membro.

Questo membro viene mantenuto separatamente in ogni controller di dominio di backup (BDC) nel dominio. Per ottenere un valore accurato, è necessario eseguire una query su ogni cluster big data nel dominio. Il numero di volte in cui l'utente ha eseguito l'accesso è la somma dei valori recuperati.

usri4_logon_server

Tipo: LPWSTR

Puntatore a una stringa Unicode contenente il nome del server a cui vengono inviate le richieste di accesso. I nomi dei server devono essere preceduti da due barre rovesciate (\). Per indicare che la richiesta di accesso può essere gestita da qualsiasi server di accesso, specificare un asterisco (\*) per il nome del server. Una stringa NULL indica che le richieste devono essere inviate al controller di dominio.

Per i server Windows, la funzione NetUserGetInfo restituisce \*.

Le funzioni NetUserAdd e NetUserSetInfo ignorano questo membro.

usri4_country_code

Tipo: DWORD

Codice paese/area geografica per la lingua scelta dall'utente.

usri4_code_page

Tipo: DWORD

Tabella codici per la lingua scelta dall'utente.

usri4_user_sid

Tipo: PSID

Puntatore a una struttura SID che contiene l'identificatore di sicurezza (SID) che identifica in modo univoco l'utente. Le funzioni NetUserAdd e NetUserSetInfo ignorano questo membro.

usri4_primary_group_id

Tipo: DWORD

Identificatore relativo (RID) del gruppo globale primario per l'utente. Quando si chiama la funzione NetUserAdd , questo membro deve essere DOMAIN_GROUP_RID_USERS (definito in WinNT.h). Quando si chiama NetUserSetInfo, questo membro deve essere il RID di un gruppo globale in cui viene registrato l'utente. Per altre informazioni, vedere SID noti e componenti SID.

usri4_profile

Tipo: LPWSTR

Puntatore a una stringa Unicode che specifica un percorso del profilo dell'utente. Questo valore può essere una stringa NULL , un percorso assoluto locale o un percorso UNC.

usri4_home_dir_drive

Tipo: LPWSTR

Puntatore a una stringa Unicode che specifica la lettera di unità assegnata alla home directory dell'utente ai fini dell'accesso.

usri4_password_expired

Tipo: DWORD

Informazioni sulla scadenza della password.

La funzione NetUserGetInfo restituisce zero se la password non è scaduta (e diverso da zero se è presente).

Quando si chiama NetUserAdd o NetUserSetInfo, specificare un valore diverso da zero in questo membro per informare gli utenti che devono modificare la password all'accesso successivo. Per disattivare questo messaggio, chiamare NetUserSetInfo e specificare zero in questo membro. Si noti che non è possibile specificare zero per negare la scadenza di una password già scaduta.

Commenti

La struttura USER_INFO_4 può essere usata con le funzioni NetUserAdd, NetUserSetInfo e NetUserGetInfo .

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.

Si noti che la struttura USER_INFO_4 sostituisce la struttura USER_INFO_3 in Windows XP e versioni successive. È consigliabile che le applicazioni usino la struttura USER_INFO_4 anziché la struttura USER_INFO_3 con le funzioni precedenti in Windows XP e versioni successive.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione lmaccess.h (include Lm.h)

Vedi anche

NetUserAdd

NetUserEnum

NetUserGetInfo

NetUserSetInfo

Panoramica della gestione della rete

Strutture di gestione di rete

SID

USER_INFO_3

Funzioni utente