Поиск заблокированных, отключенных и неактивных объектов в AD с помощью Search-ADAccount

Довольной частой задачей, которую приходится выполнять администратору Active Directory, является формирование списков отключенных или неактивных учетных записей и компьютеров, либо списков учеток с просроченными паролями. Для этого можно использовать как сохраненные LDAP запросы в консоли ADUC, так и уже знакомые нам командлеты PowerShell Get-ADUser, Get-ADObject или Get-ADComputer, однако создание правильного фильтра для данных команд может вызывать определенные затруднения. К счастью в модуле PowerShell  для ActiveDirectory есть более удобный командлет для выполнения таких задач — Search-ADAccount. Рассмотрим примеры использования командлета Search-ADAccount для типовых задач.

Итак, для работы команд лета Search-ADAccount необходимо, чтобы на компьютере был установлен как минимум PowerShell 3.0, набор  Remote Server Administration Toolkit (RSAT), в котором должен быть включить компонент Active Directory Module for Windows PowerShell (Control Panel -> Programs-> Turn Windows Features on and off-> Remote Server Administration Tools -> Role Administration Tools -> AD DS and AD LDS Tools). установка модуля Active Directory Module for Windows PowerShell

Данный компонент также может быть включен командой:

Add-WindowsFeature RSAT-AD-PowerShell

Запустите консоль PowerShell и импортируйте модуль Active Directory для PowerShell:

Import-Module ActiveDirectory

Перечислим список наиболее интересных для нас ключей командлета Search-ADAccount

Ключ Search-ADAccount Описание
-AccountDisabled

 

Поиск отключенных учетных записей
-AccountExpired

 

Учетные записи с просроченным сроком действия
-AccountExpiring [-DateTime DateTime] [-TimeSpan TimeSpan]

 

Учетные записи которые просрочатся в течении определенного периода (-TimeSpan) или в определенную дату(-DateTime)
-AccountInactive [-DateTime DateTime] [-TimeSpan TimeSpan]

 

Учетные записи, не регистровавшиеся в домене начиная с определенной даты(-DateTime) или в течении определенного периода времени (-TimeSpan)

 

-LockedOut Учетные записи, заблокированные парольной политикой
-PasswordExpired Учетные записи, пароль которых просрочен
-PasswordNeverExpires

 

Учетные записи, у которых установлен атрибут PasswordNeverExpires
Примечание. Отметим, что по умолчанию командлет Search-ADAccount выполняет поиск по пользователем и компьютеров одновременно. Чтобы искать только по пользователям или компьютерам, нужно использовать ключ ComputersOnly  или UsersOnly соответственно.

К примеру, выведем список отключенных учетных записей во всем домене:

Search-ADAccount -UsersOnly –AccountDisabled

Ограничить область поиска определенным контейнером (OU) Active Directory можно так:

Search-ADAccount -UsersOnly –AccountDisabled –searchbase "OU=Admins,OU=Accounts,DC=winitpro,DC=loc"

Список заблокированных пользователей в определенном OU Active DirectoryЭти же данные можно представить в более удобном табличном виде с помощью команды:

Search-ADAccount -UsersOnly -AccountDisabled -searchbase "OU=Admins,OU=Accounts,DC=winitpro,DC=loc"|ft -AutoSize

Либо, если нужно получить список заблокированных пользователей, содержащий только определённые атрибуты пользователей и представить в виде графической таблицы с возможностью сортировки, выполните:

Search-ADAccount -UsersOnly AccountDisabled |sort LastLogonDate | Select Name,LastLogonDate,DistinguishedName |out-gridview -title "Disabled Users"

табличное представление GridViewСписок заблокированных учетных записей пользователей:

Search-ADAccount -UsersOnly –LockedOut

Список учетных записей пользователей, неактивных в течении 60 дней:

$timespan = New-Timespan –Days 60
Search-ADAccount –UsersOnly –AccountInactive –TimeSpan $timespan

Чтобы посчитать количество таких учеток:

Search-ADAccount –UsersOnly –AccountInactive –TimeSpan $timespan | Measure

Список компьютеров, которые не регистрировавшихся в сети  в течении последних  90 дней.

Search-ADAccount -AccountInactive –ComputersOnly -TimeSpan 90

Либо с определенной даты:

Search-ADAccount -AccountInactive -ComputersOnly -DateTime ‘1/1/2017’|Select Name,LastLogonDate| ft

Список неактивных с начала года компьютеров в AD

Для выгрузки данных в CSV воспользуйтесь такой командой:

Search-ADAccount -AccountDisabled -UsersOnly| Export-Csv "c:\ps\disabled_users.csv"

(Пока оценок нет)
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x