Windows Server 2012 EventViewer Powershell脚本错误

我有一个奇怪的错误,似乎是权限相关的,虽然我已经做了大量的search,没有任何的build议工作。

我有一个PowerShell脚本,直接运行在Windows2012 DC。 它试图从EventViewer日志中获取信息,特别是“安全性”,但是突然之间,服务器现在(截至前几天)说“Get-EventLog:请求访问不被允许”。

这也是一个非常简单的命令:

Get-Eventlog -Logname Security -Newest 1 

但结果如下:

 Get-EventLog : Requested registry access is not allowed. At line:1 char:1 + Get-EventLog -Newest 1 + ~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Get-EventLog], SecurityException + FullyQualifiedErrorId : System.Security.SecurityException,Microsoft.PowerShell.Commands.GetEventLogCommand 

我曾经尝试过:

  • 给予我自己的权限(确保pipe理员/服务器操作员具有完全访问权限),还临时添加“所有人”。 这是在RegEdit中完成的: HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ EventLog
  • 在EventViewer中清除安全日志
  • 试图在辅助DC上运行相同的脚本具有相同的权限,并在那里工作。 如果我指定了-Computername SecondDC.mydomain.ads,但是如果我没有指定它或指定FirstDc.mydomain.ads,也是有效的。

我有一种感觉可能会腐败? 我不知道该在哪里看。 作为pipe理员,我应该能够从PowerShell中取出事件日志。

这感觉就像一个解决方法,它太复杂了一个简单明显的安全监控请求,但它的工作原理W2012:

  • 作为pipe理员运行registry编辑器
  • 导航到KEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ EventLog
  • 右键点击“安全”
  • 点击权限
  • 添加一个组(如“事件日志读取器”)
  • select您添加的组
  • 选中允许下的阅读
  • 退出registry并将此组添加到需要访问的用户
  • 这些用户将需要注销并重新启动

是的其他人在我面前发现了这个http://powerkb.se/?p=614