C# EventLog Недоступный журнал

Ниже приведено исключение, с которым я столкнулся при запуске следующего кода:

Источник не найден, но не удалось найти некоторые или все журналы событий. Недоступные журналы: безопасность.

Код

if (!EventLog.SourceExists(this.EventLogSource))

Содержание исключения имеет смысл для меня, вот почему это не так. Эта строка работает в Visual Studio 2010, .NET 4 как консольное приложение (пока). Я запустил это в другой среде, но я не ожидал, что удаленный стол сломает этот метод. Я пытался изменить HKML\CCS\Services\eventlog разрешения - безрезультатно, а также C:\Windows\System32\Winevt\Logs\Security.evtx разрешения. Опять безрезультатно.

Мои вопросы следующие:

  1. Почему нет переопределения игнорировать безопасные журналы,
  2. Как я могу обойти это (программно)
  3. Это потому, что я удаленный рабочий стол.

Будем признательны любому совету.

3 ответа

Решение

Microsoft требует, чтобы вы были администратором для выполнения этого метода по той самой причине, которую вы нашли.

Вот их объяснение (из документации MSDN):

Для поиска источника событий в Windows Vista и более поздних версиях или Windows Server 2003 у вас должны быть права администратора.

Причина этого требования заключается в том, что все журналы событий, включая безопасность, необходимо искать, чтобы определить, является ли источник события уникальным. Начиная с Windows Vista, пользователи не имеют прав доступа к журналу безопасности; поэтому выдается исключение SecurityException.

То, как вы обойдете это, будет полностью зависеть от того, что именно вам нужно сделать. Лучшая рекомендация, если вы не можете войти в систему как администратор, - это попытаться выполнить свое действие в блоке try/catch, а если выдается исключение SecurityException, выполнить какое-то альтернативное действие.

Доступ к некоторым EventLogs требует повышения прав. Запустите приложение от имени администратора.

Я рекомендую использовать блок приложения ведения журнала библиотеки предприятия для правильного ведения журнала.

Начните читать отсюда

Другие вопросы по тегам