Следить за актуальностью учетных записей в AD, правильное, но нудное и неблагодарное занятие. То отдел кадров не даст информацию, то сам забудешь и т.п. На выручку приходит PowerShell (подобных скриптов кстати на vbs превеликое множество), постараюсь по тексту дать комментарии.
# Получим список всех пользователей в домене собираем только включенные учетки (-Filter {Enabled -eq $true}) и выбираем свойства Name,Manager,LastLogon (-Properties Name,Manager,LastLogon )
$users = Get-ADUser -Filter {Enabled -eq $true} -Properties Name,Manager,LastLogon
#Далее передаем полученных пользователей по конвейеру выбираем из переменной поля Name,Manager, и строим хеш таблицу (@{n='LastLogon'; e={[DateTime]::FromFileTime($_.LastLogon)}} ) описывать не буду инфы много
$selectuser = $users | Select-Object Name,Manager,@{n='LastLogon';e={[DateTime]::FromFileTime($_.LastLogon)}}
#Выбираем только те объекты у которых параметр LastLogon меньше текущей даты на месяц
$userotbor = $selectuser | where-object {$_.lastlogon -lt (get-date).addmonths(-1)} | Sort-Object lastlogon
#Экспорт в файл
$userotbor | Export-CSV c:\temp\lastlogon.csv -Encoding Unicode
P.S. В сети с несколькими домен контроллерами лучше делать отбор по параметру LastLogonTimeStamp
# Получим список всех пользователей в домене собираем только включенные учетки (-Filter {Enabled -eq $true}) и выбираем свойства Name,Manager,LastLogon (-Properties Name,Manager,LastLogon )
$users = Get-ADUser -Filter {Enabled -eq $true} -Properties Name,Manager,LastLogon
#Далее передаем полученных пользователей по конвейеру выбираем из переменной поля Name,Manager, и строим хеш таблицу (@{n='LastLogon'; e={[DateTime]::FromFileTime($_.LastLogon)}} ) описывать не буду инфы много
$selectuser = $users | Select-Object Name,Manager,@{n='LastLogon';e={[DateTime]::FromFileTime($_.LastLogon)}}
#Выбираем только те объекты у которых параметр LastLogon меньше текущей даты на месяц
$userotbor = $selectuser | where-object {$_.lastlogon -lt (get-date).addmonths(-1)} | Sort-Object lastlogon
#Экспорт в файл
$userotbor | Export-CSV c:\temp\lastlogon.csv -Encoding Unicode
P.S. В сети с несколькими домен контроллерами лучше делать отбор по параметру LastLogonTimeStamp
не знаю че за... но у меня отключались рабочие учетки
ОтветитьУдалить