我尝试过滤 Windows 事件日志以获取“真实”交互式登录/解锁事件。为此,我编写了以下 XPath 过滤条件:
*[System
[EventID=4624]
[TimeCreated[@SystemTime>'2022-02-09T15:38:26']]
]
[EventData
[Data
[@Name='LogonType'] and
(Data=2 or Data=7 or Data=10 or Data=11)
]
[Data
[@Name='WorkstationName'] and
(Data!='-')
]
]
但出于任何原因,最后一个条件没有过滤任何东西。我仍然看到 WorkstationName = '-' 的事件。即使我否定了条件,它也会给我完全相同的事件。我需要如何将过滤器配置为具有基于 EventData 和 AND 逻辑的 2 个条件?
如果您想在 EventLog-Viewer 中测试它,请使用完整的 Filter-XML(跳过时间过滤器):
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">
Event
[System
[EventID=4624]
]
[EventData
[Data
[@Name='LogonType'] and
(Data=2 or Data=7 or Data=10 or Data=11)
]
[Data
[@Name='WorkstationName'] and
(Data!='-')
]
]
</Select>
</Query>
</QueryList>
使用:
您选择您感兴趣的事件(在上面的示例中特定的身份验证事件),然后抑制那些您不感兴趣的事件。抑制行数没有限制。唯一的问题是需要完全匹配,您不能使用正则表达式或通配符。