我试图让这个 PS 脚本从多台机器上提取安全日志,并且只搜索事件 ID 4624,并且只显示包含“登录类型:2”或交互式登录的日志。除了仅获取那些仅用于交互式登录的日志的部分外,我还有其他所有工作。这是我的脚本片段,如果有人知道如何实现这一点,我们将不胜感激。如果我从“登录类型”中取出 2,它就可以工作并且我得到了所有东西,但是如果我之后有任何东西,它不会引发任何错误,但它也不会产生结果。是的,我已经确认我在过滤的时间范围内有交互式登录事件。谢谢。
$服务器; Get-WinEvent -computername $server -FilterHashTable @{Logname=$logname;ID=$eventid;StartTime=$starttime;EndTime=$endtime} |其中 { $_.Message |选择字符串“登录类型:2”
蒂姆
最佳答案
为了获得最佳速度,您应该像这样通过 Xpath 进行过滤:
Get-WinEvent -ProviderName 'Microsoft-Windows-Security-Auditing' -FilterXPath "*[System[EventID=4624] and EventData[Data[@Name='LogonType']='2']]" -MaxEvents 1
关于powershell - Get-WinEvent 仅获取交互式登录消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4393437/