Share via


estructura de USER_INFO_3 (lmaccess.h)

La estructura de USER_INFO_3 contiene información sobre una cuenta de usuario, incluidos el nombre de la cuenta, los datos de contraseña, el nivel de privilegios, la ruta de acceso al directorio principal del usuario, los identificadores relativos (RID) y otras estadísticas de red relacionadas con el usuario.

Sintaxis

typedef struct _USER_INFO_3 {
  LPWSTR usri3_name;
  LPWSTR usri3_password;
  DWORD  usri3_password_age;
  DWORD  usri3_priv;
  LPWSTR usri3_home_dir;
  LPWSTR usri3_comment;
  DWORD  usri3_flags;
  LPWSTR usri3_script_path;
  DWORD  usri3_auth_flags;
  LPWSTR usri3_full_name;
  LPWSTR usri3_usr_comment;
  LPWSTR usri3_parms;
  LPWSTR usri3_workstations;
  DWORD  usri3_last_logon;
  DWORD  usri3_last_logoff;
  DWORD  usri3_acct_expires;
  DWORD  usri3_max_storage;
  DWORD  usri3_units_per_week;
  PBYTE  usri3_logon_hours;
  DWORD  usri3_bad_pw_count;
  DWORD  usri3_num_logons;
  LPWSTR usri3_logon_server;
  DWORD  usri3_country_code;
  DWORD  usri3_code_page;
  DWORD  usri3_user_id;
  DWORD  usri3_primary_group_id;
  LPWSTR usri3_profile;
  LPWSTR usri3_home_dir_drive;
  DWORD  usri3_password_expired;
} USER_INFO_3, *PUSER_INFO_3, *LPUSER_INFO_3;

Miembros

usri3_name

Tipo: LPWSTR

Puntero a una cadena Unicode que especifica el nombre de la cuenta de usuario. Para la función NetUserSetInfo , se omite este miembro. Para obtener más información, vea la sección Comentarios que se muestra más adelante.

usri3_password

Tipo: LPWSTR

Puntero a una cadena Unicode que especifica la contraseña del usuario identificado por el miembro usri3_name . La longitud no puede superar los bytes PWLEN. Las funciones NetUserEnum y NetUserGetInfo devuelven un puntero NULL para mantener la seguridad de las contraseñas.

Por convención, la longitud de las contraseñas se limita a LM20_PWLEN caracteres.

usri3_password_age

Tipo: DWORD

Número de segundos transcurridos desde que el miembro de usri3_password cambió por última vez. Las funciones NetUserAdd y NetUserSetInfo omiten este miembro.

usri3_priv

Tipo: DWORD

Nivel de privilegio asignado al miembro usri3_name . Las funciones NetUserAdd y NetUserSetInfo omiten este miembro. Este miembro puede ser uno de los siguientes valores. Para obtener más información sobre los derechos de cuenta de usuario y grupo, consulte Privilegios.

Valor Significado
USER_PRIV_GUEST
Invitado
USER_PRIV_USER
Usuario
USER_PRIV_ADMIN
Administrador

usri3_home_dir

Tipo: LPWSTR

Puntero a una cadena Unicode que especifica la ruta de acceso del directorio principal del usuario especificado por el miembro usri3_name . La cadena puede ser NULL.

usri3_comment

Tipo: LPWSTR

Puntero a una cadena Unicode que contiene un comentario que se va a asociar a la cuenta de usuario. La cadena puede ser una cadena NULL o puede tener cualquier número de caracteres antes de terminar el carácter NULL.

usri3_flags

Tipo: DWORD

Este miembro puede ser uno o varios de los valores siguientes.

Tenga en cuenta que establecer marcas de control de cuentas de usuario puede requerir ciertos privilegios y controlar los derechos de acceso. Para obtener más información, vea la sección Comentarios de la función NetUserSetInfo .

Valor Significado
UF_SCRIPT
Script de inicio de sesión ejecutado. Este valor debe establecerse.
UF_ACCOUNTDISABLE
La cuenta del usuario está deshabilitada.
UF_HOMEDIR_REQUIRED
Se requiere el directorio principal. Este valor se omite.
UF_PASSWD_NOTREQD
No se requiere una contraseña.
UF_PASSWD_CANT_CHANGE
El usuario no puede cambiar la contraseña.
UF_LOCKOUT
La cuenta está bloqueada actualmente. Puede llamar a la función NetUserSetInfo para borrar este valor y desbloquear una cuenta bloqueada previamente. No puede usar este valor para bloquear una cuenta desbloqueada previamente.
UF_DONT_EXPIRE_PASSWD
La contraseña nunca debe expirar en la cuenta.
UF_ENCRYPTED_TEXT_PASSWORD_ALLOWED
La contraseña del usuario se almacena bajo cifrado reversible en Active Directory.
UF_NOT_DELEGATED
Marca la cuenta como "confidencial"; otros usuarios no pueden actuar como delegados de esta cuenta de usuario.
UF_SMARTCARD_REQUIRED
Requiere que el usuario inicie sesión en la cuenta de usuario con una tarjeta inteligente.
UF_USE_DES_KEY_ONLY
Restrinja esta entidad de seguridad para usar solo los tipos de cifrado estándar de cifrado de datos (DES) para las claves.
UF_DONT_REQUIRE_PREAUTH
Esta cuenta no requiere autenticación previa de Kerberos para el inicio de sesión.
UF_TRUSTED_FOR_DELEGATION
La cuenta está habilitada para la delegación. Se trata de una configuración sensible a la seguridad; las cuentas con esta opción habilitada deben controlarse estrechamente. Esta configuración permite que un servicio que se ejecute en la cuenta asuma la identidad de un cliente y se autentique como ese usuario en otros servidores remotos de la red.
UF_PASSWORD_EXPIRED
La contraseña del usuario ha expirado.

Windows 2000: Este valor no se admite.

UF_TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION
La cuenta es de confianza para autenticar a un usuario fuera del paquete de seguridad kerberos y delegar ese usuario a través de la delegación restringida. Se trata de una configuración sensible a la seguridad; las cuentas con esta opción habilitada deben controlarse estrechamente. Esta configuración permite que un servicio que se ejecute en la cuenta aserte la identidad de un cliente y se autentique como ese usuario para configurar específicamente los servicios de la red.

Windows XP/2000: Este valor no se admite.

 

Los valores siguientes describen el tipo de cuenta. Solo se puede establecer un valor. No se puede cambiar el tipo de cuenta mediante la función NetUserSetInfo .

Valor Significado
UF_NORMAL_ACCOUNT
Se trata de un tipo de cuenta predeterminado que representa un usuario típico.
UF_TEMP_DUPLICATE_ACCOUNT
Se trata de una cuenta para los usuarios cuya cuenta principal está en otro dominio. Esta cuenta proporciona acceso de usuario a este dominio, pero no a ningún dominio que confíe en este dominio. El Administrador de usuarios hace referencia a este tipo de cuenta como una cuenta de usuario local.
UF_WORKSTATION_TRUST_ACCOUNT
Se trata de una cuenta de equipo para un equipo que es miembro de este dominio.
UF_SERVER_TRUST_ACCOUNT
Se trata de una cuenta de equipo para un controlador de dominio de copia de seguridad que es miembro de este dominio.
UF_INTERDOMAIN_TRUST_ACCOUNT
Se trata de un permiso para confiar en una cuenta de dominio que confía en otros dominios.

usri3_script_path

Tipo: LPWSTR

Puntero a una cadena Unicode que especifica la ruta de acceso del archivo de script de inicio de sesión del usuario. El archivo de script puede ser . Archivo CMD, un archivo .EXE o un archivo .BAT. La cadena también puede ser NULL.

usri3_auth_flags

Tipo: DWORD

Privilegios de operador del usuario.

Para las funciones NetUserGetInfo y NetUserEnum , se devuelve el valor adecuado en función de la pertenencia al grupo local. Si el usuario es miembro de los operadores de impresión, se establece AF_OP_PRINT. Si el usuario es miembro de operadores de servidor, se establece AF_OP_SERVER. Si el usuario es miembro de los operadores de cuenta, se establece AF_OP_ACCOUNTS. AF_OP_COMM nunca se establece.

Las funciones NetUserAdd y NetUserSetInfo omiten este miembro.

Este miembro puede ser uno o varios de los valores siguientes.

Valor Significado
AF_OP_PRINT
El privilegio del operador de impresión está habilitado.
AF_OP_COMM
El privilegio del operador de comunicaciones está habilitado.
AF_OP_SERVER
El privilegio del operador de servidor está habilitado.
AF_OP_ACCOUNTS
El privilegio del operador de cuentas está habilitado.

usri3_full_name

Tipo: LPWSTR

Puntero a una cadena Unicode que contiene el nombre completo del usuario. Esta cadena puede ser una cadena NULL o puede tener cualquier número de caracteres antes de terminar el carácter NULL.

usri3_usr_comment

Tipo: LPWSTR

Puntero a una cadena Unicode que contiene un comentario de usuario. Esta cadena puede ser una cadena NULL o puede tener cualquier número de caracteres antes de terminar el carácter NULL.

usri3_parms

Tipo: LPWSTR

Puntero a una cadena Unicode reservada para su uso por parte de las aplicaciones. Esta cadena puede ser una cadena NULL o puede tener cualquier número de caracteres antes de terminar el carácter NULL. Los productos de Microsoft usan este miembro para almacenar la información de configuración del usuario. No modifique esta información.

usri3_workstations

Tipo: LPWSTR

Importante

Ya no debe usar usri3_workstations. En su lugar, puede controlar el acceso de inicio de sesión a las estaciones de trabajo mediante la configuración de asignación de derechos de usuario (permitir el inicio de sesión local y Denegar el inicio de sesión localmente, o Permitir el inicio de sesión a través de Servicios de Escritorio remoto y Denegar inicio de sesión a través de Servicios de Escritorio remoto).

Puntero a una cadena Unicode que contiene los nombres de las estaciones de trabajo desde las que el usuario puede iniciar sesión. Se pueden especificar hasta ocho estaciones de trabajo; los nombres deben estar separados por comas. Si no desea restringir el número de estaciones de trabajo, use una cadena NULL . Para deshabilitar los inicios de sesión de todas las estaciones de trabajo en esta cuenta, establezca el valor de UF_ACCOUNTDISABLE en el miembro usri3_flags .

usri3_last_logon

Tipo: DWORD

Fecha y hora en que se produjo el último inicio de sesión. Este valor se almacena como el número de segundos transcurridos desde las 00:00:00, 1 de enero de 1970, GMT. Las funciones NetUserAdd y NetUserSetInfo omiten este miembro.

Este miembro se mantiene por separado en cada controlador de dominio de copia de seguridad (BDC) del dominio. Para obtener un valor preciso, debe consultar cada BDC en el dominio. El último inicio de sesión se produjo en el momento indicado por el valor recuperado más grande.

usri3_last_logoff

Tipo: DWORD

Este miembro no se usa actualmente.

Fecha y hora en que se produjo el último inicio de sesión. Este valor se almacena como el número de segundos transcurridos desde las 00:00:00, 1 de enero de 1970, GMT. Un valor de cero indica que se desconoce la hora del último inicio de sesión.

Este miembro se mantiene por separado en cada controlador de dominio de copia de seguridad (BDC) del dominio. Para obtener un valor preciso, debe consultar cada BDC en el dominio. El último inicio de sesión se produjo en el momento indicado por el valor recuperado más grande.

usri3_acct_expires

Tipo: DWORD

Fecha y hora en que expira la cuenta. Este valor se almacena como el número de segundos transcurridos desde las 00:00:00, 1 de enero de 1970, GMT. Un valor de TIMEQ_FOREVER indica que la cuenta nunca expira.

usri3_max_storage

Tipo: DWORD

Cantidad máxima de espacio en disco que puede usar el usuario. Especifique USER_MAXSTORAGE_UNLIMITED para usar todo el espacio disponible en disco.

usri3_units_per_week

Tipo: DWORD

Número de unidades de tiempo de igual duración en las que se divide la semana. Este valor es necesario para calcular la longitud de la cadena de bits en el miembro usri3_logon_hours .

Este valor debe ser UNITS_PER_WEEK para LAN Manager 2.0. Las funciones NetUserAdd y NetUserSetInfo omiten este elemento.

En el caso de las aplicaciones de servicio, las unidades deben ser uno de los siguientes valores: SAM_DAYS_PER_WEEK, SAM_HOURS_PER_WEEK o SAM_MINUTES_PER_WEEK.

usri3_logon_hours

Tipo: PBYTE

Puntero a una cadena de bits de 21 bytes (168 bits) que especifica las horas durante las que el usuario puede iniciar sesión. Cada bit representa una hora única en la semana, en hora media de Greenwich (GMT).

El primer bit (bit 0, palabra 0) es domingo, de 0:00 a 0:59; el segundo bit (bit 1, palabra 0) es domingo, de 1:00 a 1:59; y así sucesivamente. Tenga en cuenta que el bit 0 de la palabra 0 representa el domingo de 0:00 a 0:59 solo si se encuentra en la zona horaria GMT. En todos los demás casos, debe ajustar los bits según el desplazamiento de la zona horaria (por ejemplo, GMT menos 8 horas para la hora estándar del Pacífico).

Especifique un puntero NULL en este miembro al llamar a la función NetUserAdd para indicar ninguna restricción de tiempo. Especifique un puntero NULL al llamar a la función NetUserSetInfo para indicar que no se realizará ningún cambio en las horas durante las que el usuario pueda iniciar sesión.

usri3_bad_pw_count

Tipo: DWORD

Número de veces que el usuario intentó iniciar sesión en la cuenta con una contraseña incorrecta. Un valor de – 1 indica que el valor es desconocido. Las llamadas a las funciones NetUserAdd y NetUserSetInfo omiten este miembro.

Este miembro se replica desde el controlador de dominio principal (PDC); también se mantiene en cada controlador de dominio de copia de seguridad (BDC) del dominio. Para obtener un valor preciso, debe consultar cada BDC en el dominio. El número de veces que el usuario intentó iniciar sesión con una contraseña incorrecta es el valor más grande recuperado.

usri3_num_logons

Tipo: DWORD

Número de veces que el usuario ha iniciado sesión correctamente en esta cuenta. Un valor de – 1 indica que el valor es desconocido. Las llamadas a las funciones NetUserAdd y NetUserSetInfo omiten este miembro.

Este miembro se mantiene por separado en cada controlador de dominio de copia de seguridad (BDC) del dominio. Para obtener un valor preciso, debe consultar cada BDC en el dominio. El número de veces que el usuario inició sesión correctamente es la suma de los valores recuperados.

usri3_logon_server

Tipo: LPWSTR

Puntero a una cadena Unicode que contiene el nombre del servidor al que se envían las solicitudes de inicio de sesión. Los nombres de servidor deben ir precedidos de dos barras diagonales inversas (\). Para indicar que cualquier servidor de inicio de sesión puede controlar la solicitud de inicio de sesión, especifique un asterisco (\*) para el nombre del servidor. Una cadena NULL indica que las solicitudes se deben enviar al controlador de dominio.

Para servidores Windows, NetUserGetInfo y NetUserEnum devuelven \*. Las funciones NetUserAdd y NetUserSetInfo omiten este miembro.

usri3_country_code

Tipo: DWORD

Código de país o región para el idioma que prefiera el usuario.

usri3_code_page

Tipo: DWORD

Página de códigos del idioma que prefiera el usuario.

usri3_user_id

Tipo: DWORD

Identificador relativo (RID) del usuario. El RID viene determinado por el Administrador de cuentas de seguridad (SAM) cuando se crea el usuario. Define de forma única la cuenta de usuario a SAM dentro del dominio. Las funciones NetUserAdd y NetUserSetInfo omiten este miembro. Para obtener más información sobre los RID, vea Componentes de SID.

usri3_primary_group_id

Tipo: DWORD

Rid del grupo global principal para el usuario. Al llamar a la función NetUserAdd , este miembro debe ser DOMAIN_GROUP_RID_USERS (definido en WinNT.h). Cuando se llama a NetUserSetInfo, este miembro debe ser el RID de un grupo global en el que está inscrito el usuario. Para obtener más información, consulte SID conocidos.

usri3_profile

Tipo: LPWSTR

Puntero a una cadena Unicode que especifica una ruta de acceso al perfil del usuario. Este valor puede ser una cadena NULL , una ruta de acceso absoluta local o una ruta de acceso UNC.

usri3_home_dir_drive

Tipo: LPWSTR

Puntero a una cadena Unicode que especifica la letra de unidad asignada al directorio principal del usuario con fines de inicio de sesión.

usri3_password_expired

Tipo: DWORD

Información de expiración de contraseña.

Las funciones NetUserGetInfo y NetUserEnum devuelven cero si la contraseña no ha expirado (y distinto de cero si tiene).

Al llamar a NetUserAdd o NetUserSetInfo, especifique un valor distinto de cero en este miembro para informar a los usuarios de que deben cambiar su contraseña en el siguiente inicio de sesión. Para desactivar este mensaje, llame a NetUserSetInfo y especifique cero en este miembro. Tenga en cuenta que no puede especificar cero para negar la expiración de una contraseña que ya ha expirado.

Comentarios

La estructura USER_INFO_3 se puede usar con las funciones NetUserAdd, NetUserEnum, NetUserSetInfo y NetUserGetInfo .

Los nombres de cuenta de usuario están limitados a 20 caracteres y los nombres de grupo están limitados a 256 caracteres. Además, los nombres de cuenta no se pueden terminar por un punto y no pueden incluir comas ni ninguno de los siguientes caracteres imprimibles: ", /, , [, ], :, |, <, >, +, =, ;, ?, *. Los nombres tampoco pueden incluir caracteres en el intervalo 1-31, que no son imprimibles.

Tenga en cuenta que la estructura de USER_INFO_4 reemplaza la estructura de USER_INFO_3 en Windows XP y versiones posteriores. Se recomienda que las aplicaciones usen la estructura USER_INFO_4 en lugar de la estructura de USER_INFO_3 con las funciones NetUserAdd, NetUserSetInfo y NetUserGetInfo en Windows XP y versiones posteriores.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado lmaccess.h (include Lm.h)

Consulte también

NetUserAdd

NetUserEnum

NetUserGetInfo

NetUserSetInfo

Introducción a la administración de redes

Estructuras de administración de redes

Funciones de usuario