SQL Server 2005 Auditing - PullRequest
       31

SQL Server 2005 Auditing

1 голос
/ 29 сентября 2011

Справочная информация У меня есть рабочий сервер SQL Server 2005, к которому подключаются 4 различных приложения и вносят изменения.Внешних ключей нет, а в некоторых случаях нет первичных ключей.К сожалению, выбросить все это и начать с нуля не вариант.Поэтому мое решение состоит в том, чтобы начать миграцию каждого из приложений на подход сервисного уровня, чтобы было только одно приложение, напрямую подключающееся к базе данных.

Однако существуют проблемы, которые необходимо устранить до того, как этот сервисный уровень будет записани все приложения перенесены.

Поэтому вместо того, чтобы вносить изменения и надеяться, что они не сломают ни одно из 4 плохо написанных приложений (без возможности быстрого тестирования всей функциональности), мое решение - начать аудитбаза данных

Проблема Как проверить, какие хранимые процедуры, таблицы, столбцы, представления доступны, обновляются / вызываются каждым пользователем в SQL Server 2005.

Iмогу узнать, какие таблицы обновляются, но я понятия не имею, какие столбцы и какими пользователями.Я также не знаю, осуществляется ли доступ к определенным таблицам только через хранимые процедуры / представления.

Я знаю, что SQL Server 2008 обладает улучшенными функциями аудита, но если бы я мог это сделать, не потратив денег, это было бы здорово.Тем не менее, если лучшим решением является обновление или покупка программного обеспечения, это тоже вариант.

1 Ответ

2 голосов
/ 23 апреля 2012

Ознакомьтесь с функцией CDC в SQL Server 2008 . Вы не можете использовать это напрямую в 2005 году, но вы можете написать триггер для каждой таблицы, чтобы записывать все изменения данных в новую таблицу аудита. то есть у вас будет таблица аудита для каждой таблицы в вашей базе данных со всеми одинаковыми столбцами плюс некоторые дополнительные столбцы, в которых указано, что это была за операция и когда она произошла.

Если характер ваших приложений означает, что вы можете получать информацию о пользователях и / или информацию о приложениях из CURRENT_USER и APP_NAME (), вы также можете включить эту информацию в таблицу аудита.

И зацените этот ответ для большей добра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...