我相当于域管理员,我尝试在提升的控制台中运行(右键单击>以管理员身份运行),并且在执行时不断收到错误
get-winevent -logname application | where {$_.message -match "Faulting application"} | `
select TimeCreated,message
我会得到三行结果,然后
Get-WinEvent : Attempted to perform an unauthorized operation.
At line:1 char:13 Get-WinEvent : Attempted to perform an unauthorized operation.
+ CategoryInfo : NotSpecified: (:) [Get-WinEvent], UnauthorizedAccessException
+ FullyQualifiedErrorId : Attempted to perform an unauthorized operation.,Microsoft.PowerShell.Commands.GetWinEventCommand
这似乎是一个新的进展,以前没有出现过这些错误。
它是一致的 - 如果我从另一台服务器使用 -computername运行它,模式仍然会出现 3 个 OK 行,然后是 X 错误,然后是 5 个 OK 行,等等。
答案1
其他事件日志是否也会出现这种情况?例如,如果您运行以下命令来查看具有特定事件 ID 的登录事件,结果会怎样?:
Get-WinEvent -FilterHashtable @{logname='security'; id=@(4624,4634,4672,4648)}
如果此方法有效,则应用程序事件日志中可能存在一些您无权访问的项目。在这种情况下,您必须使用类似进程监控找出您的访问被拒绝的原因。
使用 FilterHashtable 参数将过滤条件传递给 Get-WinEvent cmdlet 可能会获得更好的结果。请参阅http://ss64.com/ps/get-winevent.html举些例子。
答案2
我可以在锁定的系统上以非管理员用户身份运行此程序。检查 GPO 中事件日志的权限和审核策略。您可能已将其设置为只有审核人员才能查看日志。如果是这种情况,祝您好运。
答案3
我在安全日志方面遇到了这个问题。远程 不会返回任何条目get-winevent -logname security
。用户可以通过 访问远程安全事件日志eventvwr.msc
。
修复方法是使用 reg hack - 为这个键添加权限:
HKLM\System\CurrentControlSet\Services\eventlog\Security
我添加了具有读取权限的用户的 AD 组,get-winevent
之后就可以完美运行了。
答案4
我发现了另一种触发此错误的情况。
- 您的 Get-WinEvent 调用是否使用了 ComputerName 参数?
- 目标地址是否为 DNS 别名(CNAME 记录)?
如果上述物品真的,请尝试使用 IP 地址。
那是一个解决我的问题的改变。