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 |
---|---|
|
Invitado |
|
Usuario |
|
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 |
---|---|
|
Script de inicio de sesión ejecutado. Este valor debe establecerse. |
|
La cuenta del usuario está deshabilitada. |
|
Se requiere el directorio principal. Este valor se omite. |
|
No se requiere una contraseña. |
|
El usuario no puede cambiar la contraseña. |
|
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. |
|
La contraseña nunca debe expirar en la cuenta. |
|
La contraseña del usuario se almacena bajo cifrado reversible en Active Directory. |
|
Marca la cuenta como "confidencial"; otros usuarios no pueden actuar como delegados de esta cuenta de usuario. |
|
Requiere que el usuario inicie sesión en la cuenta de usuario con una tarjeta inteligente. |
|
Restrinja esta entidad de seguridad para usar solo los tipos de cifrado estándar de cifrado de datos (DES) para las claves. |
|
Esta cuenta no requiere autenticación previa de Kerberos para el inicio de sesión. |
|
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. |
|
La contraseña del usuario ha expirado.
Windows 2000: Este valor no se admite. |
|
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 .
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.
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
Introducción a la administración de redes