Powershell 获取系统用户运行时未分析消息的事件日志 问题
我正在尝试安排一个监视远程计算机上事件的作业 我根据Powershell 获取系统用户运行时未分析消息的事件日志 问题,powershell,event-log,get-eventlog,get-winevent,Powershell,Event Log,Get Eventlog,Get Winevent,我正在尝试安排一个监视远程计算机上事件的作业 我根据geteventlog命令编写了脚本,当我的帐户运行时,它可以正常工作。但是当我以SYSTEM用户身份运行Get EventLog时,返回对象的.Message属性显示以下错误: 找不到源“Microsoft Windows安全审核”中事件ID“4724”的说明。本地计算机可能没有显示消息所需的注册表信息或消息DLL文件,或者您可能没有访问它们的权限。以下信息是事件的一部分:{somedata} 当我以SYSTEM用户身份使用Get WinEv
geteventlog
命令编写了脚本,当我的帐户运行时,它可以正常工作。但是当我以SYSTEM
用户身份运行Get EventLog
时,返回对象的.Message
属性显示以下错误:
找不到源“Microsoft Windows安全审核”中事件ID“4724”的说明。本地计算机可能没有显示消息所需的注册表信息或消息DLL文件,或者您可能没有访问它们的权限。以下信息是事件的一部分:{somedata}
当我以SYSTEM
用户身份使用Get WinEvent
命令时,问题不会出现,并且消息
部分显示正确
我会坚持使用Get-WinEvent
,尤其是因为数据更容易解析(由于ToXML()
方法),但是Get-EventLog
恰好更快:(
问题:
有人知道为什么系统运行时获取事件日志
无法呈现。消息
,以及如何修复吗
为了避免显而易见的答案:
COMPUTER$
帐户是DOMAIN\Event Log Readers
组的成员
COMPUTER$
帐户对远程计算机上的HKEY\U LOCAL\U MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security
具有读取权限
- 显然,源计算机和目标计算机上的
Microsoft Windows安全审核
和相关DLL的注册表项是相同的
试试:
获取WinEvent-LogName“Microsoft Windows安全审核”|其中ID-eq 4724 | select object-ExpandProperty Message因为您正在使用get-winevent
可以尝试传递-credential参数吗?正如我已经解释过的,这似乎是相关的,我确实知道get-winevent
可以工作。但是与get-Eventlog
相比,它的速度非常慢,因此这个问题是特别的后者。