【发布时间】:2021-05-17 16:49:06
【问题描述】:
感谢 Powershell 向导提供的任何建议。
我正在尝试设置一个电子邮件警报,该警报将在事件时触发,但在将值作为变量传递时遇到问题,因此我可以稍后在电子邮件的正文和主题中使用它。
我有几行脚本可以提取一个事件并将其存储为 XML,但没有运气将值转换为变量以便稍后调用它。
$event = wevtutil qe 'Microsoft-Windows-Base-Filtering-Engine-Connections/Operational' /rd:true /c:1 /q:"*[System[(EventID=2000)]]" /f:renderedxml
$xmlresults = [xml]$event
$eventDate = $xmlresults.event.system.timecreated.systemtime
$eventTime = get-date $eventDate -Format ('dd-MM-yyyy hh:mm:ss')
现在当调用$xmlresults.event.eventdata.data 时,我可以看到表格中的所有值:
PS C:\Windows\system32> $xmlresults.Event.EventData.Data
Name #text
---- -----
ConnectionId 1324000000003942
MachineAuthenticationMethod 2
RemoteMachineAccount DOMAIN\COMPUTERNAME$
UserAuthenticationMethod 2
RemoteUserAcount DOMAIN\USERNAME$
RemoteIPAddress XXXX:XXXXX:XXXX:XXXX:XXXXX:XXX:XXXX
LocalIPAddress XXXXX:XXXX:XXXX:XXXX::1
TechnologyProviderKey {XXXXXX-XXXX-XXXXX-XXXX-XXXXXXXXXX}
IPsecTrafficMode 1
DHGroup 0
StartTime 2021-05-17T13:52:38.103Z
如何将 RemoteMachineAccount 和 RemoteUserAccount 的值存储为变量,以便稍后在编写电子邮件警报和日志输入时在脚本中调用它,只需使用类似于 $computer 和 @ 的内容987654327@?
非常感谢任何帮助。
【问题讨论】:
-
$xmlresults.Event.EventData.Data.Where({$_.Name -eq 'RemoveMachineAccount'}).InnerText应该可以解决问题 -
出色的先生,这正是我想要的。非常感谢马蒂亚斯。
标签: windows powershell event-viewer