Лучший отвечающий
Какой атрибут объекта User позволяет судить о блокировке учётной записи?

Вопрос
-
var objUsrLdap = GetObject("LDAP://cn=User, cn=Users, dc=mydomain, dc=local");
// получение объекта типа User в LDAP-формате
var objUsrNT = GetObject("WinNT://mydomain/User, user");
// получение объекта типа User в NT-формате
Какой атрибут надо проверить, чтобы понять, что учётная запись данного пользователя заблокирована?
- Изменено im20002 14 июля 2013 г. 9:30 ошибка
14 июля 2013 г. 9:27
Ответы
-
Это не заблокировано, это отключённая учётная запись.
Это свойство определяется вторым битом значения аттрибута UserAccountControl :
http://support.microsoft.com/kb/305144/ru
Используйте вот такое условие: (userAccountControl:1.2.840.113556.1.4.803:=2)
http://blogs.technet.com/b/heyscriptingguy/archive/2005/05/12/how-can-i-get-a-list-of-all-the-disabled-user-accounts-in-active-directory.aspx
- Помечено в качестве ответа KazunEditor 16 июля 2013 г. 7:46
14 июля 2013 г. 12:47 -
im20002, в Вашем случае для определения отключенных "учёток" проще всего использовать атрибут AccountDisabled.
- Помечено в качестве ответа KazunEditor 16 июля 2013 г. 10:29
16 июля 2013 г. 8:22
Все ответы
-
http://www.rlmueller.net/LockedUsers.htm
Проверить,что атрибут lockoutTime>=1 для LDAP и для WinNT - IsAccountLocked .
- Изменено KazunEditor 14 июля 2013 г. 10:03 IsAccountLocked
14 июля 2013 г. 10:02Отвечающий -
ни фига не помогает... реально есть заблокированные учётки, однако они никак не хотят определяться как таковые...?! думал может "что не так применяю"... скопировал готовый отсюда: http://www.rlmueller.net/Programs/LockedUsers.txt сделал vbs-скрипт запустил, он выдаёт: No user accounts locked out in domain!!! Может неправильно задачу сформулировал: На закладке "учетная запись" пользователя в AD пункт "отключить учётную запись" отмечен галочкой!
im2002
14 июля 2013 г. 12:07 -
Это не заблокировано, это отключённая учётная запись.
Это свойство определяется вторым битом значения аттрибута UserAccountControl :
http://support.microsoft.com/kb/305144/ru
Используйте вот такое условие: (userAccountControl:1.2.840.113556.1.4.803:=2)
http://blogs.technet.com/b/heyscriptingguy/archive/2005/05/12/how-can-i-get-a-list-of-all-the-disabled-user-accounts-in-active-directory.aspx
- Помечено в качестве ответа KazunEditor 16 июля 2013 г. 7:46
14 июля 2013 г. 12:47 -
im20002, в Вашем случае для определения отключенных "учёток" проще всего использовать атрибут AccountDisabled.
- Помечено в качестве ответа KazunEditor 16 июля 2013 г. 10:29
16 июля 2013 г. 8:22 -
всем спасибо, сделал и через userAccountControl (2-ой младший бит для LDAP) и AccountDisabled (для WinNT). правда 2-ым методом получилось короче... :)
im2002
20 июля 2013 г. 17:53 -
im20002, атрибут AccountDisabled одинаково успешно можно применять при использовании и провайдера WinNT, и провайдера LDAP.
Атрибут userAccountControl, на мой вкус, удобнее применять в запросах к AD через ADO, а вот атрибут AccountDisabled - при прямой привязке к конкретному объекту AD.22 июля 2013 г. 4:17