Get-EventLog не анализирует сообщение при запуске пользователем SYSTEM
проблема
Я пытаюсь запланировать работу, которая отслеживает события на удаленных машинах.
Я написал сценарий на основе Get-EventLog
команда, и она работает правильно, когда запускается моей учетной записью. Но когда я бегу Get-EventLog
как SYSTEM
пользователь, .Message
Атрибут возвращаемых объектов показывает следующую ошибку:
Описание для идентификатора события "4724" в источнике "Microsoft-Windows-Security-Auditing" не может быть найдено. На локальном компьютере может отсутствовать необходимая информация реестра или файлы DLL сообщений для отображения сообщения, или у вас может не быть разрешения на доступ к ним. Следующая информация является частью события: {somedata}
Когда я использую Get-WinEvent
команда как SYSTEM
пользователь, проблема не появляется и .Message
часть отображается правильно.
Я бы придерживался Get-WinEvent
тем более что данные анализировать намного проще (благодаря ToXML()
метод), но Get-EventLog
бывает ужасно быстрее:(
Вопрос
Кто-нибудь знает, почему Get-EventLog
не может сделать .Message
когда управляется SYSTEM
пользователь и, возможно, как это исправить?
Чтобы избежать очевидных ответов:
COMPUTER$
учетная запись является членомDOMAIN\Event Log Readers
группа,COMPUTER$
учетная запись имеет привилегии чтения надHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Security
на удаленных машинах,- очевидно, записи реестра для
Microsoft-Windows-Security-Auditing
и связанные DLL идентичны как на исходном, так и на целевом компьютерах.
0 ответов
Попробуйте: Get-WinEvent -LogName "Microsoft-Windows-Security-Auditing" | где ID -экв 4724 | select-object -ExpandProperty Сообщение