2

问题

我正在尝试安排一个监视远程机器上事件的作业。

我根据Get-EventLog命令编写了脚本,并且在我的帐户运行时它可以正常工作。但是当我Get-EventLogSYSTEM用户身份运行时,.Message返回对象的属性显示以下错误:

找不到源“Microsoft-Windows-Security-Auditing”中事件 ID“4724”的描述。本地计算机可能没有必要的注册表信息或消息 DLL 文件来显示消息,或者您可能没有访问它们的权限。以下信息是事件的一部分:{somedata}

当我Get-WinEvent以用户身份使用该命令时SYSTEM,问题不会出现并且.Message部件显示正确。

我会坚持下去Get-WinEvent,特别是因为数据更容易解析(多亏了该ToXML()方法),但Get-EventLog恰好速度非常快:(

问题

有谁知道为什么用户运行时Get-EventLog无法渲染以及如何修复它?.MessageSYSTEM

为了避免明显的答案:

  • COMPUTER$帐户是DOMAIN\Event Log Readers组的成员,
  • COMPUTER$帐户确实HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security对远程计算机具有读取权限,
  • 显然,源计算机和目标计算机上的注册表项Microsoft-Windows-Security-Auditing和相关 DLL 是相同的。
4

1 回答 1

0

尝试:Get-WinEvent -LogName “Microsoft-Windows-Security-Auditing” | 其中 ID -eq 4724 | 选择对象-ExpandProperty 消息

于 2018-12-29T00:40:26.843 回答