¿Por qué recibo errores no autorizados con Powershell get-winevent?


9

Soy un administrador de dominio equivalente, he intentado ejecutar en una consola elevada (clic derecho> ejecutar como administrador), y constantemente recibo errores al ejecutar

get-winevent -logname application | where {$_.message -match "Faulting application"} | `
                                    select TimeCreated,message

Obtendré tres líneas de resultados, entonces

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

Esto parece ser un nuevo desarrollo, no he recibido esos errores antes.

Es coherente: si lo ejecuto con -computername desde otro servidor, el patrón sigue con 3 líneas OK, luego X errores, luego 5 líneas OK, etc.


1
¿Qué sistema operativo y versión de PowerShell está ejecutando? (gwmi Win32_OperatingSystem).VersionyGet-Host
Chris S

Windows Server 2008 R2 + SP1, Powershell 2.0
usuario209162

¿Se está ejecutando desde un indicador de PowerShell elevado?
MDMoore313

De get-help get-winevent Note: [...] And, it requires the Microsoft .NET Framework 3.5 or a later version.¿Cumple con este requisito?
Brice

1
Sí, esto es de un caparazón elevado.
user209162

Respuestas:


0

¿Sucede con otros registros de eventos? Por ejemplo, ¿qué sucede si ejecuta lo siguiente para ver eventos de inicio de sesión con ID de eventos específicos ?:

Get-WinEvent -FilterHashtable @{logname='security'; id=@(4624,4634,4672,4648)}

Si eso funciona, puede haber algunos elementos en el registro de eventos de la aplicación a los que no tiene acceso. En ese caso, tendría que usar algo como Process Monitor para averiguar por qué se niega su acceso.

Puede obtener mejores resultados con el parámetro FilterHashtable para pasar los criterios de filtro al cmdlet Get-WinEvent. Consulte http://ss64.com/ps/get-winevent.html para ver ejemplos.


0

Puedo ejecutar esto con un usuario no administrativo en un sistema bloqueado. Verifique sus permisos y políticas de auditoría para los registros de eventos en GPO. Puede configurarlo para que SOLO los auditores puedan ver los registros. Buena suerte para solucionar problemas si ese es el caso.


0

Tuve este problema con el registro de seguridad. No se devolverán entradas desde un control remoto get-winevent -logname security. El usuario pudo acceder al registro de eventos de seguridad remota a través de eventvwr.msc.

La solución fue un hack de registro: agregue un permiso a esta clave:

HKLM\System\CurrentControlSet\Services\eventlog\Security

Agregué el grupo AD del usuario con acceso de lectura y get-wineventfuncionó perfectamente después de eso.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.