Поделиться через


структура USER_INFO_4 (lmaccess.h)

Структура USER_INFO_4 содержит сведения об учетной записи пользователя, включая имя учетной записи, данные пароля, уровень привилегий, путь к домашнему каталогу пользователя, идентификатор безопасности (SID) и другую статистику сети, связанную с пользователем.

Синтаксис

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;

Члены

usri4_name

Тип: LPWSTR

Указатель на строку Юникода, указывающую имя учетной записи пользователя. Для функции NetUserSetInfo этот элемент игнорируется.

usri4_password

Тип: LPWSTR

Указатель на строку Юникода, указывающую пароль пользователя, указанного элементом usri4_name . Длина не может превышать PWLEN-байт. Функция NetUserGetInfo возвращает указатель NULL для обеспечения безопасности паролей.

По соглашению длина паролей ограничена LM20_PWLEN символами.

usri4_password_age

Тип: DWORD

Количество секунд, прошедших с момента последнего изменения элемента usri4_password . Функции NetUserAdd и NetUserSetInfo игнорируют этот элемент.

usri4_priv

Тип: DWORD

Уровень привилегий, назначенных члену usri4_name . Функции NetUserAdd и NetUserSetInfo игнорируют этот элемент. Этот элемент может иметь одно из следующих значений. Дополнительные сведения о правах учетной записи пользователя и группы см. в разделе Привилегии.

Значение Значение
USER_PRIV_GUEST
Гость
USER_PRIV_USER
Пользователь
USER_PRIV_ADMIN
Администратор

usri4_home_dir

Тип: LPWSTR

Указатель на строку Юникода, указывающую путь к домашнему каталогу пользователя, указанного элементом usri4_name . Строка может иметь значение NULL.

usri4_comment

Тип: LPWSTR

Указатель на строку Юникода, содержащую комментарий для связи с учетной записью пользователя. Строка может быть строкой NULL или иметь любое количество символов перед завершающим символом NULL.

usri4_flags

Тип: DWORD

Этот элемент может иметь одно или несколько из следующих значений.

Обратите внимание, что для установки флагов управления учетными записями могут потребоваться определенные привилегии и права доступа. Дополнительные сведения см. в разделе Примечания функции NetUserSetInfo .

Значение Значение
UF_SCRIPT
Выполняемый скрипт входа. Это значение должно быть задано.
UF_ACCOUNTDISABLE
Учетная запись пользователя отключена.
UF_HOMEDIR_REQUIRED
Требуется домашний каталог. Это значение игнорируется.
UF_PASSWD_NOTREQD
Пароль не требуется.
UF_PASSWD_CANT_CHANGE
Пользователь не может изменить пароль.
UF_LOCKOUT
Учетная запись в настоящее время заблокирована. Вы можете вызвать функцию NetUserSetInfo , чтобы очистить это значение и разблокировать ранее заблокированную учетную запись. Это значение нельзя использовать для блокировки ранее разблокированных учетных записей.
UF_DONT_EXPIRE_PASSWD
Срок действия пароля для учетной записи не должен истекать.
UF_ENCRYPTED_TEXT_PASSWORD_ALLOWED
Пароль пользователя хранится под обратимым шифрованием в Active Directory.
UF_NOT_DELEGATED
Помечает учетную запись как "конфиденциальную"; другие пользователи не могут выступать в качестве делегатов этой учетной записи пользователя.
UF_SMARTCARD_REQUIRED
Требует, чтобы пользователь входить в учетную запись пользователя с помощью смарт-карта.
UF_USE_DES_KEY_ONLY
Ограничьте этот субъект, чтобы использовать только типы шифрования des для ключей.
UF_DONT_REQUIRE_PREAUTH
Эта учетная запись не требует предварительной проверки подлинности Kerberos для входа.
UF_TRUSTED_FOR_DELEGATION
Учетная запись включена для делегирования. Это параметр с учетом безопасности; Учетные записи с включенным параметром должны строго контролироваться. Этот параметр позволяет службе, работающей под учетной записью, принимать удостоверение клиента и проходить проверку подлинности от имени этого пользователя на других удаленных серверах в сети.
UF_PASSWORD_EXPIRED
Срок действия пароля пользователя истек.

Windows 2000: Это значение игнорируется.

UF_TRUSTED_TO_AUTHENTICATE_FOR_DELEGATION
Учетная запись является доверенной для проверки подлинности пользователя за пределами пакета безопасности Kerberos и делегирования этого пользователя с помощью ограниченного делегирования. Это параметр с учетом безопасности; Учетные записи с включенным параметром должны строго контролироваться. Этот параметр позволяет службе, работающей под учетной записью, подтвердить удостоверение клиента и пройти проверку подлинности от имени этого пользователя для специально настроенных служб в сети.

Windows XP/2000: Это значение игнорируется.

 

Следующие значения описывают тип учетной записи. Можно задать только одно значение. Тип учетной записи нельзя изменить с помощью функции NetUserSetInfo .

Значение Значение
UF_NORMAL_ACCOUNT
Это тип учетной записи по умолчанию, представляющий типичного пользователя.
UF_TEMP_DUPLICATE_ACCOUNT
Это учетная запись для пользователей, основная учетная запись которых находится в другом домене. Эта учетная запись предоставляет пользователям доступ к этому домену, но не к любому домену, который доверяет этому домену. Диспетчер пользователей относится к этому типу учетной записи как к локальной учетной записи пользователя.
UF_WORKSTATION_TRUST_ACCOUNT
Это учетная запись компьютера, являющегося членом этого домена.
UF_SERVER_TRUST_ACCOUNT
Это учетная запись компьютера для резервного контроллера домена, который является членом этого домена.
UF_INTERDOMAIN_TRUST_ACCOUNT
Это разрешение на доверие учетной записи для домена, который доверяет другим доменам.

usri4_script_path

Тип: LPWSTR

Указатель на строку Юникода, указывающую путь к файлу скрипта входа пользователя. Файл скрипта может быть . ФАЙЛ CMD, файл .EXE или файл .BAT. Строка также может иметь значение NULL.

usri4_auth_flags

Тип: DWORD

Привилегии оператора пользователя.

Для функции NetUserGetInfo возвращается соответствующее значение на основе членства в локальной группе. Если пользователь является членом операторов печати, устанавливается AF_OP_PRINT. Если пользователь является членом операторов сервера, AF_OP_SERVER устанавливается. Если пользователь является членом операторов учетных записей, AF_OP_ACCOUNTS устанавливается. AF_OP_COMM никогда не устанавливается.

Функции NetUserAdd и NetUserSetInfo игнорируют этот элемент.

Этот элемент может быть одним или несколькими из следующих значений.

Значение Значение
AF_OP_PRINT
Привилегия оператора печати включена.
AF_OP_COMM
Включена привилегия оператора связи.
AF_OP_SERVER
Права оператора сервера включены.
AF_OP_ACCOUNTS
Права оператора учетных записей включены.

usri4_full_name

Тип: LPWSTR

Указатель на строку Юникода, содержащую полное имя пользователя. Эта строка может быть строкой NULL или иметь любое количество символов до завершающего символа NULL.

usri4_usr_comment

Тип: LPWSTR

Указатель на строку Юникода, содержащую комментарий пользователя. Эта строка может быть строкой NULL или иметь любое количество символов до завершающего символа NULL.

usri4_parms

Тип: LPWSTR

Указатель на строку Юникода, зарезервированную для использования приложениями. Эта строка может быть строкой NULL или иметь любое количество символов до завершающего символа NULL. Продукты Майкрософт используют этот элемент для хранения сведений о конфигурации пользователей. Не изменяйте эти сведения.

usri4_workstations

Тип: LPWSTR

Важно!

Вы больше не должны использовать usri4_workstations. Вместо этого вы можете управлять доступом для входа на рабочие станции, настроив параметры Назначения прав пользователя (Разрешить локальный вход и Запретить локальный вход в систему или Разрешить вход с помощью служб удаленных рабочих столов и Запретить вход через службы удаленных рабочих столов).

Указатель на строку Юникода, содержащую имена рабочих станций, с которых пользователь может войти в систему. Можно указать до восьми рабочих станций; имена должны быть разделены запятыми. Если вы не хотите ограничивать количество рабочих станций, используйте строку NULL . Чтобы отключить вход в эту учетную запись со всех рабочих станций, задайте значение UF_ACCOUNTDISABLE в элементе usri4_flags .

usri4_last_logon

Тип: DWORD

Дата и время последнего входа в систему. Это значение хранится в виде количества секунд, прошедших с 00:00:00, 1 января 1970 г., GMT. Этот элемент игнорируется функциями NetUserAdd и NetUserSetInfo .

Этот член поддерживается отдельно на каждом резервном контроллере домена (BDC) в домене. Чтобы получить точное значение, необходимо запросить каждый BDC в домене. Последний вход произошел в момент, указанный наибольшим извлеченным значением.

usri4_last_logoff

Тип: DWORD

Этот элемент в настоящее время не используется.

Дата и время последнего выхода из системы. Это значение хранится в виде количества секунд, прошедших с 00:00:00, 1 января 1970 г., GMT. Нулевое значение указывает, что время последнего выхода неизвестно.

Этот член поддерживается отдельно на каждом резервном контроллере домена (BDC) в домене. Чтобы получить точное значение, необходимо запросить каждый BDC в домене. Последний выход произошел в момент, указанный наибольшим извлеченным значением.

usri4_acct_expires

Тип: DWORD

Дата и время истечения срока действия учетной записи. Это значение хранится как количество секунд, прошедших с 00:00:00, 1 января 1970 г., GMT. Значение TIMEQ_FOREVER указывает, что срок действия учетной записи никогда не истекает.

usri4_max_storage

Тип: DWORD

Максимальный объем дискового пространства, который может использовать пользователь. Укажите USER_MAXSTORAGE_UNLIMITED для использования всего доступного места на диске.

usri4_units_per_week

Тип: DWORD

Количество единиц времени равной длины, на которые делится неделя. Это значение необходимо для вычисления длины битовой строки в элементе usri4_logon_hours .

Это значение должно быть UNITS_PER_WEEK для LAN Manager 2.0. Этот элемент игнорируется функциями NetUserAdd и NetUserSetInfo .

Для приложений-служб единицы должны иметь одно из следующих значений: SAM_DAYS_PER_WEEK, SAM_HOURS_PER_WEEK или SAM_MINUTES_PER_WEEK.

usri4_logon_hours

Тип: PBYTE

Указатель на 21-байтовую (168-разрядную) битовую строку, указывающую время, в течение которого пользователь может войти в систему. Каждый бит представляет уникальный час недели, в гринвиче среднее время (GMT).

Первый бит (бит 0, слово 0) — воскресенье, с 0:00 до 0:59; второй бит (бит 1, слово 0) — воскресенье, 1:00–1:59; и так далее. Обратите внимание, что бит 0 в слове 0 представляет воскресенье с 0:00 до 0:59, только если вы находитесь в часовом поясе GMT. Во всех остальных случаях необходимо настроить биты в соответствии со смещением часового пояса (например, GMT минус 8 часов для тихоокеанского стандартного времени).

Укажите в этом элементе указатель NULL при вызове функции NetUserAdd , чтобы указать отсутствие ограничений по времени. Укажите указатель NULL при вызове функции NetUserSetInfo , чтобы указать, что не нужно изменять время, в течение которого пользователь может войти в систему.

usri4_bad_pw_count

Тип: DWORD

Количество попыток входа пользователя в учетную запись с неправильным паролем. Значение – 1 указывает, что значение неизвестно. Вызовы функций NetUserAdd и NetUserSetInfo игнорируют этот элемент.

Этот элемент реплицируется из основного контроллера домена (PDC); Он также поддерживается на каждом резервном контроллере домена (BDC) в домене. Чтобы получить точное значение, необходимо запросить каждый BDC в домене. Наибольшее полученное значение — количество попыток входа пользователя с неправильным паролем.

usri4_num_logons

Тип: DWORD

Количество успешных попыток входа пользователя в эту учетную запись. Значение – 1 указывает, что значение неизвестно. Вызовы функций NetUserAdd и NetUserSetInfo игнорируют этот элемент.

Этот член поддерживается отдельно на каждом резервном контроллере домена (BDC) в домене. Чтобы получить точное значение, необходимо запросить каждый BDC в домене. Количество успешных попыток входа пользователя — это сумма полученных значений.

usri4_logon_server

Тип: LPWSTR

Указатель на строку Юникода, содержащую имя сервера, на который отправляются запросы на вход. Имена серверов должны предшествовать двумя обратными косыми чертами (\). Чтобы указать, что запрос на вход может обрабатываться любым сервером входа, укажите звездочку (\*) для имени сервера. Строка NULL указывает, что запросы должны отправляться на контроллер домена.

Для серверов Windows функция NetUserGetInfo возвращает \*.

Функции NetUserAdd и NetUserSetInfo игнорируют этот элемент.

usri4_country_code

Тип: DWORD

Код страны или региона для выбранного пользователем языка.

usri4_code_page

Тип: DWORD

Кодовая страница для выбранного пользователем языка.

usri4_user_sid

Тип: PSID

Указатель на структуру ИД безопасности , содержащую идентификатор безопасности (SID), который уникально идентифицирует пользователя. Функции NetUserAdd и NetUserSetInfo игнорируют этот элемент.

usri4_primary_group_id

Тип: DWORD

Относительный идентификатор (RID) основной глобальной группы для пользователя. При вызове функции NetUserAdd этот элемент должен быть DOMAIN_GROUP_RID_USERS (определяется в WinNT.h). При вызове NetUserSetInfo этот член должен быть RID глобальной группы, в которой зарегистрирован пользователь. Дополнительные сведения см. в разделе Известные идентификаторы безопасности и компоненты sid.

usri4_profile

Тип: LPWSTR

Указатель на строку Юникода, указывающую путь к профилю пользователя. Это может быть строка NULL , локальный абсолютный путь или UNC-путь.

usri4_home_dir_drive

Тип: LPWSTR

Указатель на строку Юникода, указывающую букву диска, назначенную домашнему каталогу пользователя для входа в систему.

usri4_password_expired

Тип: DWORD

Сведения об истечении срока действия пароля.

Функция NetUserGetInfo возвращает ноль, если срок действия пароля не истек (и ненулевое значение, если он есть).

При вызове NetUserAdd или NetUserSetInfo укажите ненулевое значение в этом элементе, чтобы сообщить пользователям о том, что они должны изменить свой пароль при следующем входе в систему. Чтобы отключить это сообщение, вызовите NetUserSetInfo и укажите ноль в этом элементе. Обратите внимание, что вы не можете указать ноль, чтобы отменять срок действия пароля, срок действия которого уже истек.

Комментарии

Структуру USER_INFO_4 можно использовать с функциями NetUserAdd, NetUserSetInfo и NetUserGetInfo .

Имена учетных записей пользователей могут содержать не более 20 символов, а имена групп — не более 256 символов. Кроме того, имена учетных записей не могут быть завершены точкой и не могут содержать запятые или любые из следующих печатных символов: ", /, , [, ], :, |, <, >, +, =, ;, ?, *. Имена также не могут содержать непечатаемые символы в диапазоне от 1 до 31.

Обратите внимание, что структура USER_INFO_4 заменяет структуру USER_INFO_3 в Windows XP и более поздних версиях. Рекомендуется, чтобы приложения использовали структуру USER_INFO_4 вместо структуры USER_INFO_3 с указанными выше функциями в Windows XP и более поздних версиях.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть lmaccess.h (включая Lm.h)

См. также раздел

NetUserAdd

NetUserEnum

NetUserGetInfo

NetUserSetInfo

Общие сведения об управлении сетью

Структуры управления сетью

SID

USER_INFO_3

Пользовательские функции