Get-ADComputer Lastlogondate / Lastlogon - PullRequest
0 голосов
/ 12 июня 2019

Я сейчас спрашиваю себя, возможно ли определить время последнего входа в систему любого пользователя объекта компьютера, подключенного к активному каталогу?

Мне нужно выяснить, когда какой-либо пользователь вошел в систему на определенном компьютере, который все еще подключен к сети, взаимодействовал с доменом, но не использовался в последние X дней каким-либо пользователем.

Я уже пробовал следующие запросы:

get-adcomputer $computername -Properties lastlogon | select 
@{Name="lastLogon";Expression={[datetime]::FromFileTime($_.'lastLogon')}}

И

get-adcomputer za31testvmrobin -Properties lastlogondate

Я ожидаю отметку времени последнего входа пользователя в систему на объекте компьютера.

Надеюсь, вы сможете мне помочь.

1 Ответ

0 голосов
/ 13 июня 2019

Я как-то разобрался с помощью @boxdog.Спасибо за это.

Вот код Powershell в одну строку:

Get-EventLog -LogName Security -InstanceId 4624 -ComputerName $computer | 
`where {$_.Message -match "Kontoname:       USERNAME" -and 
`$_.Message -match "Anmeldetyp:         2" }  | select -First 1)

Kontoname = AccountnameAnmeldetyp = Logontype (2 означает интерактивный с консоли с помощью клавиатуры и мыши)Нужен табулятор.Вы также можете использовать подстановочные знаки, такие как звездочка.

Я не мог найти более простой способ заставить его работать.Поэтому мне пришлось использовать оператор сравнения «match», чтобы найти строку, по которой я мог бы искать в свойстве Message журнала событий.

К сожалению, поиск занимает некоторое время.С помощью пульта уходит до 5 минут каждый компьютер, что тихо неудовлетворительно.Может быть, у кого-то есть другое решение, которое работает быстрее или знает способ параллельной работы, на самом деле я не знаю, как это сделать, потому что я получаю контент с

get-content c:\data\input.txt

Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...