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


Атрибуты безопасности пользователей

Помимо свойств именования для пользовательских объектов, например objectGUID, objectSid, cn, различающеесяимя_имени и т. д., существуют другие свойства безопасности, используемые для входа, доступа к сети и управления доступом. Эти свойства используются системой безопасности Windows и могут просматриваться и управляться оснастки пользователей и компьютеров Active Directory.

accountExpires

Атрибут accountExpires указывает, когда истекает срок действия учетной записи. Это значение хранится в виде большого целого числа, представляющего число интервалов 100-nanosecond с 1 января 1601 г. (UTC). Значение TIMEQ_FOREVER (определенное в Lmaccess.h) указывает, что учетная запись никогда не истекает.

altSecurityIdentities

Атрибут altSecurityIdentities — это многозначный атрибут, содержащий сопоставления сертификатов X.509 или внешних учетных записей пользователей Kerberos с этим пользователем для проверки подлинности. Различные пакеты безопасности, включая пакет проверки подлинности с открытым ключом и Kerberos, используют эти данные для проверки подлинности пользователей, когда они представляют альтернативную форму идентификации, например сертификат, билет UNIX Kerberos и т. д. Создайте токен Windows 2000 на основе соответствующей учетной записи пользователя, чтобы получить доступ к системным ресурсам.

Для сертификатов X.509 значения должны быть имена издателя и субъекта в сертификатах 509v3, выданных внешним общедоступным центром сертификации, которые сопоставляются с учетной записью пользователя, используемой для поиска учетной записи для проверки подлинности. Пакет SSL (Schannel) использует следующий синтаксис: X509:<somecertinfotype>somecertinfoinfo. Например, следующее значение указывает DN издателя "<I>" с DN "C=US,O=InternetCA,CN=APublicCertificateAuthority" и субъект DN "<S>" с DN "C=US,O=Fabrikam,OU=Sales,CN=Jeff Smith".

X509:<I>C=US,O=InternetCA,CN=APublicCertificateAuthority<S>C=US,O=Fabrikam,OU=Sales,CN=Jeff Smith

Помните, что поддерживаются "<S>" или "<I>" и "<S>". Наличие только "<я>" не поддерживается. Приложения не должны изменять значения внутри "<I>" или "<S>", так как частичное сопоставление DN не поддерживается.

Для внешних учетных записей Kerberos значения должны быть именем учетной записи Kerberos. Пакет Kerberos использует следующий синтаксис: Kerberos:MITaccountname. Например, ниже приведено значение для учетной записи в Fabrikam.com:

Kerberos:Jeff.Smith@Fabrikam.com

badPasswordTime

Нереплицированные. Атрибут badPasswordTime указывает время последнего входа пользователя в учетную запись с использованием неправильного пароля. Это значение хранится в виде большого целого числа, представляющего число интервалов 100-nanosecond с 1 января 1601 г. (UTC). Этот атрибут поддерживается отдельно на каждом контроллере домена в домене. Значение нуля означает, что последнее неправильное время пароля неизвестно. Чтобы получить точное значение последнего неправильного пароля пользователя в домене, необходимо запросить каждый контроллер домена в домене, а наибольшее значение следует использовать.

badPwdCount

Нереплицированные. Атрибут badPwdCount указывает количество попыток входа пользователя в учетную запись с использованием неправильного пароля. Этот атрибут поддерживается отдельно на каждом контроллере домена в домене. Значение 0 указывает, что значение неизвестно. Чтобы получить точное значение для общих неудачных попыток пароля пользователя в домене, каждый контроллер домена в домене должен запрашиваться, а сумма значений должна использоваться.

codePage

АтрибутcodePageуказывает кодовую страницу выбранного пользователя языка. Это значение не используется Windows.

countryCode

АтрибутcountryCodeуказывает код страны или региона для языка пользователя. Это значение не используется Windows.

homeDirectory

Атрибут homeDirectory указывает путь к домашнему каталогу для пользователя. Строка может иметь значение NULL.

Если homeDrive задан и задает букву диска, homeDirectory должен быть UNC-путь. Путь должен быть сетевым UNC-путем формы \\server\share\directory. Это значение может быть пустой строкой.

Если homeDrive не задано, homeDirectory должен быть локальным путем, например C:\mylocaldir.

homeDrive

Атрибут homeDrive указывает букву диска, с которой сопоставляется UNC-путь, указанный homeDirectory. Буква диска должна быть указана в следующей форме:

<drive letter>:

где "<буква диска>" — это буква диска для сопоставления. Например:

Z:

Если этот атрибут не задан, homeDirectory должен быть локальным путем, например C:\mylocaldir.

lastLogoff

Нереплицированные. Атрибут lastLogoff указывает время последнего выхода. Это значение хранится в виде большого целого числа, представляющего число интервалов 100-nanosecond с 1 января 1601 г. (UTC). Высокая часть этого большого целого числа соответствует элементу dwHighDateTime структуры FILETIME и низкой части соответствует элементу dwLowDateTime структуры FILETIME. Этот атрибут поддерживается отдельно на каждом контроллере домена в домене. Значение нуля означает, что последнее время выхода неизвестно. Чтобы получить точное значение последнего выхода пользователя в домене, каждый контроллер домена в домене должен запрашиваться, и следует использовать наибольшее значение.

lastLogon

Нереплицированные. Атрибут lastLogon указывает, когда произошел последний вход. Это значение хранится в виде большого целого числа, представляющего число интервалов 100-nanosecond с 1 января 1601 г. (UTC). Высокая часть этого большого целого числа соответствует элементу dwHighDateTime структуры FILETIME и низкой части соответствует элементу dwLowDateTime структуры FILETIME. Этот атрибут поддерживается отдельно на каждом контроллере домена в домене. Значение нуля означает, что последнее время входа неизвестно. Чтобы получить точное значение последнего входа пользователя в домен, необходимо запросить каждый контроллер домена в домене и использовать наибольшее значение.

lmPwdHistory

Атрибут lmPwdHistory — это журнал паролей пользователя в одностороннем формате (OWF). OWF LM используется для совместимости с клиентами LAN Manager 2.x, Windows 95 и Windows 98. Этот атрибут используется только операционной системой. Помните, что вы не можете наследить пароль обычного текста из формы OWF пароля.

вход в систему

Нереплицированные. Атрибут logonCount подсчитывает количество успешных попыток входа пользователя в эту учетную запись. Этот атрибут поддерживается на каждом контроллере домена в домене. Значение 0 указывает, что значение неизвестно. Чтобы получить точное значение для общего количества успешных попыток входа пользователя в домен, каждый контроллер домена в домене должен запрашиваться, а сумма значений должна использоваться.

почта

Атрибут почты — это однозначный атрибут, содержащий SMTP-адрес пользователя, например jeff@Fabrikam.com.

maxStorage

Атрибут maxStorage указывает максимальное количество дискового пространства, которое может использовать пользователь. Используйте значение USER_MAXSTORAGE_UNLIMITED (определенное в Lmaccess.h), чтобы использовать все доступное место на диске.

memberOf

Атрибут memberOf является многозначным атрибутом, который содержит группы, из которых пользователь является прямым членом, за исключением основной группы, которая представлена primaryGroupId. Членство в группах зависит от контроллера домена (DC), из которого извлекается этот атрибут:

  • В контроллере домена для домена, содержащего пользователя, членOf для пользователя полностью соответствует членству в группах в этом домене; однако memberOf не содержит членство пользователя в локальных и глобальных группах домена в других доменах.
  • На сервере GC членOf для пользователя полностью соответствует всем членам универсальной группы.

Если оба условия верны для контроллера домена, оба набора данных содержатся в элементе memberOf.

Помните, что этот атрибут содержит группы, содержащие пользователя в атрибуте-члене, не содержат рекурсивный список вложенных предшественников. Например, если пользователь O является членом группы C и группы B и группы B, вложенными в группу A, атрибут memberOf пользователя O будет перечислять группу C и группу B, но не группу A.

Этот атрибут не хранится— это вычисляемый атрибут обратной связи.

ntPwdHistory

Атрибут ntPwdHistory — это журнал паролей пользователя в одностороннем формате Windows NT (OWF). Windows использует Windows NT OWF. Этот атрибут используется только операционной системой. Помните, что вы не можете наследить пароль обычного текста из формы OWF пароля.

otherMailbox

Атрибут otherMailbox является многозначным атрибутом, который содержит другие дополнительные почтовые адреса в форме, например CCMAIL: JeffSmith.

PasswordExpirationDate

Дата окончания срока действия пароля не является атрибутом объекта пользователя. Это вычисляемое значение на основе суммы pwdLastSet для пользователя и maxPwdAge домена пользователя. Чтобы получить дату истечения срока действия пароля, получите свойство IADsUser.PasswordExpirationDate. Нельзя изменить этот атрибут для пользователя; Вместо этого задайте свойство IADsDomain.MaxPasswordAge, чтобы изменить параметр для домена.

primaryGroupId

Атрибут primaryGroupId является однозначным атрибутом, который содержит первичной группыToken группы, которая является основной группой объекта. Основная группа объекта не включена в атрибут memberOf. Например, по умолчанию основная группа объекта пользователя является primaryGroupToken группы "Пользователи домена", но группа "Пользователи домена" не является частью атрибута memberOf объекта пользователя.

profilePath

Атрибут profilePath указывает путь к профилю пользователя. Это значение может быть пустой строкой, локальным абсолютным путем или UNC-пути.

pwdLastSet

АтрибутpwdLastSet указывает время последнего изменения пароля. Это значение хранится в виде большого целого числа, представляющего число интервалов 100-nanosecond с 1 января 1601 г. (UTC).

Система использует значение этого атрибута и атрибут maxPwdAgeдомена, содержащего объект пользователя для вычисления даты истечения срока действия пароля. То есть сумма pwdLastSet для пользователя и maxPwdAge домена пользователя.

Этот атрибут определяет, должен ли пользователь изменить пароль при следующем входе пользователя. Если pwdLastSet равно нулю, по умолчанию пользователь должен изменить пароль при следующем входе. Значение -1 указывает, что пользователю не требуется изменить пароль при следующем входе. Система задает это значение -1 после того, как пользователь задал пароль.

sAMAccountType

Атрибут sAMAccountType указывает целое число, представляющее тип учетной записи. Это устанавливается операционной системой при создании объекта.

scriptPath

Атрибут scriptPath указывает путь к скрипту входа пользователя, .cmd, .exeили файлу .bat. Строка может иметь значение NULL.

tokenGroups

Атрибут tokenGroups является многозначным атрибутом, который содержит идентификатор безопасности всех групп, в которых пользователь является прямым и косвенным членом, включая основную группу. Этот атрибут можно извлечь только в том случае, если сервер глобального каталога (GC) присутствует для получения транзитивного обратного членства.

Помните, что этот атрибут содержит группы, содержащие пользователя в атрибуте члена, а также группы, содержащие эти группы в атрибуте-члене, и т. д. Например, если пользователь O является членом группы C и группы B и группы B, вложенными в группу A, атрибут tokenGroups пользователя O будет перечислять группу C, группу B и группу A.

Атрибут tokenGroups является полезным атрибутом для получения списка членства в группах только в двух запросах LDAP: первый, чтобы получить список идентификаторов групп из атрибута tokenGroups пользователя, второй с помощью этого списка идентификаторов безопасности для получения атрибута имени каждой группы. Это позволяет избежать необходимости выполнять несколько поисковых запросов для расширения атрибута primaryGroupId и рекурсивного расширения атрибута memberOf.

ЮникодPwd

Атрибут юникодPwd — это пароль пользователя.

Чтобы задать пароль пользователя, используйте метод IADsUser.ChangePassword, если ваш скрипт или приложение позволяет пользователю изменить свой пароль или метод IADsUser.SetPassword, если ваш скрипт или приложение позволяет администратору сбрасывать пароль.

Пароль пользователя в одностороннем формате Windows NT (OWF). Windows использует Windows NT OWF. Этот атрибут используется только операционной системой. Помните, что вы не можете наследить пароль обычного текста из формы OWF пароля.

userAccountControl

Атрибут userAccountControl указывает флаги, управляющие паролем, блокировкой, отключением и включением, скриптом и поведением домашнего каталога для пользователя. Этот атрибут также содержит флаг, указывающий тип учетной записи объекта. Обычно объект пользователя имеет набор UF_NORMAL_ACCOUNT.

Следующие флаги определены в Lmaccess.h.

Флаг Описание
UF_SCRIPT Исполняемый скрипт входа. Это значение должно быть задано для LAN Manager 2.0 или Windows NT.
UF_ACCOUNTDISABLE Учетная запись пользователя отключена.
UF_HOMEDIR_REQUIRED Требуется домашний каталог. Это значение игнорируется в Windows NT и Windows 2000.
UF_PASSWD_NOTREQD Пароль не требуется.
UF_PASSWD_CANT_CHANGE Пользователь не может изменить пароль.
UF_LOCKOUT В настоящее время учетная запись заблокирована. Это значение можно очистить, чтобы разблокировать ранее заблокированную учетную запись. Это значение нельзя использовать для блокировки ранее заблокированной учетной записи.
UF_DONT_EXPIRE_PASSWD Представляет пароль, срок действия которого не должен истекать в учетной записи.

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

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

userCertificate

Атрибут userCertificate является многозначным атрибутом, содержащим сертификаты x509v3, выданные пользователю. Помните, что этот атрибут содержит сертификаты открытого ключа, выданные этому пользователю службой сертификатов Майкрософт.

userSharedFolder

Атрибут userSharedFolder указывает UNC-путь к общей папке документов пользователя. Путь должен быть сетевым UNC-путем формы \\server\share\directory. Это значение может быть пустой строкой.

userWorkstations

Атрибут userWorkstations — это однозначный атрибут, содержащий имена рабочих станций NetBIOS, на которых пользователь может войти в систему. Каждое имя NetBIOS отделяется запятой.

Если значения не заданы, это означает, что ограничения отсутствуют. Чтобы отключить входы со всех рабочих станций в эту учетную запись, задайте значение UF_ACCOUNTDISABLE (определено в Lmaccess.h) в атрибуте userAccountControl.