![]() |
PowerShell узнать по доменному имени имя учетной записи, авторизовавшейся последней
Доброго времени суток!
У меня есть список доменных имен компьютеров(около тысячи), и мне необходимо узнать список имен доменных учетных записей, авторизовавшихся на каждом из этих компьютерах последним, а так же адреса электронной почты этих учетных записей. я могу просмотреть это всё просто списком, но необходимо написать скрипт, для выполнения этой задачи. С powerShell'ом практически не знаком, но от меня требуют в таком виде. Спасибо заранее. |
DOMAIN - Заменить на NetBios имя своего домена
Код:
$filter = "*[System[EventID=4624] and (EventData[Data[@Name='LogonType']=2] or EventData[Data[@Name='LogonType']=10]) |
я не совсем понял скрипт
тут мы задаем условие для поиска: $filter = "*[System[EventID=4624] and (EventData[Data[@Name='LogonType']=2] or EventData[Data[@Name='LogonType']=10]) and EventData[Data[@Name='TargetDomainName']='DOMAIN']]" здесь мы выводим список, исходя из нашего фильтра: Get-ADComputer -Filter "Enabled -eq '$true' -and DnsHostName -like '*'" | Foreach { а вот тут я понял не до конца, вы не могли бы пояснить $event = $mail = $user = $null $event = Get-WinEvent -FilterXPath $filter -LogName Security -MaxEvent 1 -ComputerName $_.DnsHostName if($event) { $user = $event.Properties[5].Value if($user) { $mail = (Get-ADUser $user -Properties mail).mail } } и почему у нас именно такое условие поиска? |
Цитата:
Цитата:
Код:
$event = $null Цитата:
Цитата:
Цитата:
Повторить для каждой из полученного перечня машин. Цитата:
|
Благодарю всех за ответы)
|
Время: 12:42. |
Время: 12:42.
© OSzone.net 2001-