微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

按用户名而不是 sid 过滤日志

如何解决按用户名而不是 sid 过滤日志

我想过滤一些特定用户名的日志。在事件查看器中,您可以在提到的字段中输入用户名,它会过滤您的日志。但我想使用 cmd ( wevtutil ) ,所以我应该使用 xml 查询来过滤我的日志。但是问题出现在这里。在 xml 查询中,您只能输入要查找的用户的 sid(在 system[security[@Userid]]] 中)。 是否可以以某种方式使用用户名而不是 sid?

1 2

注意事项: 在事件查看器中,当您输入 username 时,它​​会将用户名转换为 sid 并在其 xml 查询中使用 sid。我不知道它是如何发生的。

我应该在这里提到一个注释: 有些人建议我使用“目标用户名”来过滤我的日志。但这不是我要找的。 “目标用户名”只处理登录日志。

解决方法

您可以只使用用户名来检索他们的 SID 以在您的 wevtutil 命令中使用。

从命令提示符,()

For /F %G In ('%SystemRoot%\System32\wbem\WMIC.exe UserAccount Where "Name='KnownUserName'" Get SID 2^>NUL ^| %SystemRoot%\System32\find.exe "-"') Do @%SystemRoot\System32\wevtutil.exe CommandLineOptions

您只需替换 KnownUserNameCommandLineOptions,并将它们的 SID 替换为 %G

或者来自

@For /F %%G In ('%SystemRoot%\System32\wbem\WMIC.exe UserAccount Where
 "Name='KnownUserName'" Get SID 2^>NUL ^| %SystemRoot%\System32\find.exe "-"'
) Do @%SystemRoot\System32\wevtutil.exe CommandLineOptions

显然,您将再次替换 KnownUserNameCommandLineOptions,这次将它们的 SID 替换为 %%G

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。