2017-06-19 57 views
1

作爲我的安全管理職責的一部分,我需要查看域控制器上的Windows事件日誌以查看失敗的登錄嘗試。Windows事件查看器:導出安全審計失敗爲CSV

我目前所做的是轉到Windows事件查看器中的安全日誌,並通過審覈失敗進行篩選。我必須每天都這樣做。對於簡單的任務而言,這是一個繁瑣而繁瑣的過程。

我希望能夠使用Powershell來提取我需要的信息並將其導出到CSV,以便我可以輕鬆瀏覽信息並根據需要進行排序。

正如我試圖的例子,我追平了以下內容:

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

的問題是,這個輸出就現在顯示的用戶名,目標IP或端口。當我查看其中一個事件時,我發現可以在原始XML視圖(TargetUserNameIpAddressIpPort)中找到這些值,但我無法弄清楚如何查詢這些值以顯示在輸出中。有誰知道這可以實現嗎?

+0

出口爲XML,而不是,也許'|%{$ _ toxml用於()}'或'出口,Clixml' –

回答

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:"}} 
+0

亞當,這是真棒!謝謝!它確實是我想要的。非常感激! –