none
Какой атрибут объекта User позволяет судить о блокировке учётной записи? RRS feed

  • Вопрос

  • 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