Как использовать сохраненные LDAP запросы (Saved Queries) в Active Directory

Пошагово используем LDAP-запросы в Active Directory Users and Computers: создаём и сохраняем поиски, находим пользователей, компьютеры и группы, экспортируем результаты в CSV и переносим запросы между компьютерами.

Администратору домена Active Directory часто приходиться иметь дело с различными запросами, например, необходимо найти все отключенные учетные записи компьютеров или всех сотрудников какого-то департамента, или все глобальные группы. Некоторые администраторы сразу думают о каких-то скриптах на Powershell или VBS, забывая при этом, что все это можно сделать прямо в оснастке Active Directory Users and Computers (ADUC) с помощью запросов LDAP, которые к тому же можно удобно там же в консоли и сохранить, а при необходимости еще и выгрузить в файл XML и перенести на другой компьютер. Напомню, что такое LDAP — это сокращение от Lightweight Directory Access Protocol, то есть это облегченный протокол доступа к каталогу. Подробней узнать о нем можно, например, в википедии. Советую обратить особое внимание на синтаксис и логические операторы.

Сохраненные запросы LDAP (Saved Queries) впервые появились еще в Windows 2003 и продолжают оставаться и в текущих версиях Windows. Основное их преимущество в том, что для их использования не требуется программирования, все работа происходит во всем хорошо знакомой консоли Active Directory Users and Computers. С результатом запроса можно производить массовые операции типичные для ADUC, например, перенос, удаление, отключение, добавление в группы и так далее. Возможно формировать как простые запросы, используя типовые настройки, так и сложные с помощью редактора на вкладке «Advanced», тем самым достигается гибкость без использования сложных скриптов.

Использование сохраненных запросов LDAP (Saved Queries) в оснастке Active Directory Users and Computers

Чтобы воспользоваться запросами, запустите оснастку (snap-in) Active Directory Users and Computers.

Сохраненные запросы LDAP в ADUC

Работа с LDAP запросами по группам Active Directory

Допустим, что вам нужно найти все пустые группы в домене или каком-то OU (organizational unit). Создайте новую папку, например, «Запросы по группам». В ней вы будете хранить все ваши новые запросы по группам.

Совет. Желательно давать значимые и понятные названия папкам и всем создаваемым запросам. Также неплохо заполнять описание к запросам. Поддерживается древовидная структура папок, поэтому используйте эту возможность. Тем самым вы упростите себе жизнь в дальнейшем, когда запросов станет много.

Создание новой папки в сохраненных запросах консоли ADUC

 

Новая папка в сохраненных запросах ADUC

Создайте новый LDAP запрос.

Создание нового запроса LDAP

Допустим, что вам нужно искать только в OU Test. Для составления самого LDAP запроса нажмите «Define Query…».

Свойства запроса

Для использования пользовательского поиска выберите в выпадающем списке «Custom Search».

Выбор произвольного поиска для запроса

Далее нажмите «Field», затем «Group» и далее «Members».

Создание запроса LDAP по пустым группам AD

Выберите условие «Not present».

Подготовка поиска LDAP по пустым группам AD

Результат нашего запроса.

Проверка результата LDAP запроса по пустым группам AD

Немного изменив запрос на вкладке «Advanced» в поле «Enter LDAP query:», можно найти пустые группы какого-то определенного типа, например, глобальные.

Запрос LDAP по поиску только пустых глобальных групп AD

Работа с LDAP запросами по учетным записям Active Directory

Далее рассмотрим использование запросов для поиска учетных записей пользователей. Например, найдем все отключенные учетные записи.

Задайте название и описание для нового запроса.

Создание нового LDAP запроса для поиска отключенных учетных записей пользователей в AD

Нажмите «Define Query…». Выберите «Common Queries», «Disabled accounts».

Типовой LDAP запрос для поиска отключенных учетных записей пользователей в AD

Сохраните ваш запрос — нажмите «OK».

ldap query for disabled accounts in active directory

Результаты нашего запроса.

Результат LDAP запроса по отключенным учетным записям пользователей AD

Результаты запроса при необходимости можно сохранить в файл CSV.

Экспорт результатов LDAP запроса в файл CSV

Выберите, куда сохранить файл.

Сохранить результат запроса LDAP в CSV файл

В дальнейшем при использовании сохраненных запросов для получения свежих данных нужно в контекстном меню запроса выбрать «Refresh» или нажать кнопку F5.

Экспорт и импорт определений LDAP запросов

Сохраненные запросы хранятся локально на том компьютере, где они создавались. Файл XML с настройками хранится в профиле пользователя, из под которого запускалась оснастка. Имейте это ввиду при смене компьютера или удалении профиля. Нужно заранее сделать копию этой папки или воспользоваться предусмотренным в консоли механизмом экспорта, импорта, описанным ниже.

Для экспорта определения запроса в контекстном меню выберите «Export Query Definition…».

Экспорт определения запроса LDAP

Сохраните в файл XML.

Экспорт определения LDAP запроса в файл XML

Для импорта определения запроса в контекстном меню выберите «Import Query Definition…».

Импорт определения LDAP запроса из файла XML

Примеры LDAP запросов

  • Все пользователи, созданные после 2015 года — (&(&(&(objectClass=User)(whenCreated>=20160101000000.0Z))))
  • Пользователи из отдела маркетинга — (&(objectCategory=person)(objectClass=user)(department=Маркетинг))
  • Все компьютеры Windows 7/2008 R2 — (&(objectCategory=computer)(operatingSystemVersion=6.1*))
  • Группы с ключевым словом «доступ» в имени — (objectCategory=group)(samaccountname=*доступ*)

 

 

Тимлид команды системных администраторов Windows-инфраструктуры с 20-летним опытом. Специализация: сопровождение серверов Windows, Active Directory, Hyper-V, PowerShell-автоматизация, мониторинг.