Функции ORIGINAL_LOGIN и SYSTEM_USER для аудита?

#sql-server #triggers #auditing

#sql-сервер #триггеры #аудит

Вопрос:

Я реализую вставленный триггер и рассматриваю возможность использования функции ORIGINAL_LOGIN для отслеживания текущего пользователя-исполнителя. Я хотел бы знать плюсы и минусы использования ORIGINAL_LOGIN для аудита. При каком сценарии SYSTEM_USER предоставляет лучшую альтернативу ORIGINAL_LOGIN?

Ответ №1:

SYSTEM_USER предоставляет вам учетные данные, используемые для выполнения запроса. Это важно, чтобы установить, какие разрешения были активны. ORIGINAL_LOGIN предоставляет вам пользователя, с которым было установлено соединение. Это тоже важная информация.

SYSTEM_USER

  • Pro: вы можете видеть, с какими разрешениями был выполнен запрос.
  • Против: вы не знаете, кто изначально создал соединение

ORIGINAL_LOGIN

  • Профи: Вы видите, кто создал соединение.
  • Против: Вы не знаете, с какими разрешениями был выполнен запрос.

Чтобы получить правильные результаты аудита, оба они должны быть занесены в журнал.

Комментарии:

1. Спасибо Филипу Де Восу! Как вы упомянули, я решил зарегистрировать обе эти данные.

2. Это ORIGINAL_LOGIN и не ORIGINAL_USER так, не так ли?