Windows事件查看器:导出安全审核失败为CSV

时间:2017-06-19 19:01:49

标签: xml powershell csv security event-viewer

作为安全管理职责的一部分,我需要查看域控制器上的Windows事件日志,以确定登录尝试失败。

我目前所做的是转到Windows事件查看器中的安全日志,并按审核失败进行过滤。我必须每天这样做。对于一项简单的任务来说,这是一个繁琐乏味的过程。

我希望能够使用Powershell提取我需要的信息并将其导出为CSV,以便我可以轻松浏览信息并根据需要进行排序。

作为我尝试的一个例子,我将以下内容捆绑在一起:

Get-WinEvent -FilterHashtable @{ logname = 'Security'; id = 4771 } |
    Export-Csv -NoType "c:\Output.csv"

问题是,此输出现在显示用户名,目标IP或端口。当我查看其中一个事件时,我发现这些值可以在原始XML视图中找到(TargetUserNameIpAddressIpPort),但我无法弄清楚如何查询那些值显示在输出中。有谁知道如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

您要查找的值位于Properties属性中。 试试这个:

 Get-WinEvent -FilterHashtable @{ logname = 'Security'; id = 4771 } | Select-Object TimeCreated, 
 @{ Name='TargetUserName'; Expression={$_.Properties[0].value}},
 @{ Name='IpPort'; Expression={$_.Properties[7].value}},
 @{ Name='IpAddress'; Expression={$_.Properties[6].value -replace "::ffff:"}}