Форум администраторов Windows

Серверные системы Microsoft => Windows Server 2008 => Тема начата: maloy от 07 Февраль 2013, 08:58:47

Название: LDAP запрос для поиска всех активный пользователей в AD
Отправлено: maloy от 07 Февраль 2013, 08:58:47
Приветствую, коллеги!
Возникла необходимость отфильтровать в консоли ADUC всех пользователей с активными учетными записями!
Насколько я понимаю мне нужно сделать специальный фильтр по LDAP запросу и применить его. Не нашел у пользователя атрибут, который отвечает за статус учетной записи (активна, заблокирована и т.д.). Подскажите плиз!!
Название: Re: LDAP запрос для поиска всех активный пользователей в AD
Отправлено: dimokkk от 07 Февраль 2013, 09:03:07
За статус учетной записи отвечает атрибут userAccountControl (http://winitpro.ru/index.php/2018/05/14/convertaciya-atributa-useraccountcontrol-v-ad/).
Чтобы отфильтровать только активных пользователей можно использовать такой LDAP фильтр:
(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2))
Название: Re: LDAP запрос для поиска всех активный пользователей в AD
Отправлено: itpro от 07 Февраль 2013, 09:04:57
(!userAccountControl:1.2.840.113556.1.4.803:=2)

Название: Re: LDAP запрос для поиска всех активный пользователей в AD
Отправлено: itpro от 07 Февраль 2013, 09:07:53
Опоздал :)
Дополню, то же самое на powershell можно сделать с помощью командлета Get-ADUser и параметра, задающего фильтр  -LDAPFilter, например:

Get-ADUser -SearchBase "ou=Empoyers,dc=contoso,dc=com" -LDAPFilter "(!userAccountControl:1.2.840.113556.1.4.803:=2)"

Или с помощью командной строки и команды dsquery (LDAP фильтр немного расширим, чтобы отображались только пользователи без компьютеров):

dsquery * "ou=Empoyers,dc=contoso,dc=com" -Filter "(&(objectCategory=person)(objectClass=user)(!userAccountControl:1.2.840.113556.1.4.803:=2))"

Название: Re: LDAP запрос для поиска всех активный пользователей в AD
Отправлено: maloy от 07 Февраль 2013, 09:08:53
Спасибо! работает отлично!