Определить пользователя коммутатора с PowerShell - PullRequest
4 голосов
/ 04 марта 2011

Я хочу зарегистрировать дату и время каждого временного переключателя, который вызывается пользователем на машине.Как я могу это сделать?Нечто похожее на это, но для события «Переключение пользователя»: обнаружение выхода из системы и включение с PowerShell

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

1 Ответ

3 голосов
/ 18 марта 2011

Я думаю, что то, что вы ищете для этого:

Event ID 4778 : A user has logged by selecting Switch user command (Fast User Switching).
Event ID 4779 : A user has logged back on using Switch user command (Fast User Switching).

Но эти события появляются в журнале событий «Безопасность» только при настройке «Audit conexion events» в страте аудита.

enter image description here

Извините за французский экран, но я думаю, что это лучше, чем ничего.

После этого при использовании «Быстрого переключения пользователей», если вы фильтруете события с идентификаторами 4778 и 4779, вы можете увидеть что-то вроде:

enter image description here

Таким образом, адаптация PowerShell кода, который вы указали в своем вопросе, выглядит примерно так:

clear-Host
$UserProperty = @{n="User";e={$_.ReplacementStrings[0]}}
$TypeProperty = @{n="Action";e={switch($_.EventID) {4778 {"SwitchOn"} 4779{"SwitchOff"}}}}
$TimeProeprty = @{n="Time";e={$_.TimeGenerated}}
Get-EventLog -LogName Security -Source Microsoft-Windows-security-auditing | where {$_.EventID -eq 4778 -or $_.EventID -eq 4779} | select $UserProperty,$TypeProperty,$TimeProeprty

Надеюсь, это поможет.

JP

PS: Вы можете найти другие сведения о "быстром переключении пользователей" на французском языке .

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