Есть ли отчет по умолчанию на сервере Sql, который будет выводить историю разрешений/сохраненных данных для данного пользователя или логина? Если нет, кто-нибудь знает, как обрабатывать такой запрос? Недавно у нас был инцидент, когда пользователь загадочно потерял права на вставку на стол, и мы хотели бы узнать, что именно это вызвало.SQL Server - отчет об изменениях прав доступа пользователей/сохраненных документов
ответ
Единственный способ понять это - прочитать журнал транзакций, в котором хранится информация о каждой транзакции. Если ваша база данных находилась в режиме полного восстановления, тогда информация находится где-то там.
К сожалению, вы не можете сделать это, используя стандартные инструменты, потому что MS не поддерживает это.
Вы можете получить коммерческое устройство чтения журнала или попытаться взломать его с помощью недокументированных команд, таких как fn_dblog.
Проверить их для более подробной информации
Read the log file (*.LDF) in sql server 2008
Спасибо, я знал, что он где-то там. – matt
Вот запрос на поиск разрешений для базы данных. Мы использовали вариант этого запроса для копирования разрешений из одной таблицы в другую таблицу.
select *
FROM sys.database_permissions AS dp
INNER JOIN sys.objects AS o ON dp.major_id=o.object_id
INNER JOIN sys.schemas AS s ON o.schema_id = s.schema_id
INNER JOIN sys.database_principals AS dpr ON dp.grantee_principal_id=dpr.principal_id
Спасибо, но я действительно больше ищу для запроса аудита - я хочу знать, какой процесс/пользователь точно изменил эти права пользователей. – matt
Если эта информация хранится в SQL, я ее не видел/не знаю, где ее найти. Следующее, что мне кажется, это написать триггер. Но я не знаю, насколько хорошо это будет работать с информацией о схеме. – orgtigger
- 1. Сводный отчет об утилите диска Отчет в SQL Server
- 2. push sql server change уведомления об изменениях на устройстве iOS
- 3. Как сохранить данные об изменениях (CDC) SQL Server 2012
- 4. Запрос клиента: ежедневный отчет об изменениях между двумя таблицами DB
- 5. Отчет об обновлении SQL
- 6. Есть ли доступный API для доступа к Уведомлению об изменениях?
- 7. Сообщите об изменениях в данных
- 8. Как добавить локализацию в отчет об изменениях в maven?
- 9. Отчет об изменениях выпуска при использовании JIRA, Ivy и SVN
- 10. SQL Advance Уведомление об изменениях данных?
- 11. SQL Server 2008 - Изменение прав доступа к базе данных
- 12. Получить информацию об изменениях схемы
- 13. Отчет об ошибке триггера SQL
- 14. Уведомить меня об изменениях
- 15. Ошибка прав доступа при попытке просмотреть отчет в SSRS
- 16. Fotoware Index Manager: уведомление об изменениях
- 17. SQL Server создать отчет писем
- 18. AfxMessageBox - Нарушение прав доступа
- 19. Ограничение прав доступа PDP
- 20. Аудит прав доступа к SQL-серверу
- 21. Нарушение прав доступа DirectWrite
- 22. Недостаточно прав доступа
- 23. Нарушение прав доступа Ошибка
- 24. Отчет об итогах подсчета иерархии SQL
- 25. Ограничения прав доступа Facebook
- 26. Уведомить Директиву об изменениях Angular2
- 27. Программа не помнит об изменениях
- 28. FindFirstChangeNotification уведомляет об изменениях дважды
- 29. javascript об изменениях необходимо обновить
- 30. Уведомления об изменениях в облаке
Я не думаю, что история сохраняется в любой таблице. Вам нужно будет использовать инспектора журнала, например Apex или Red Gate. Системная таблица, которую вы хотите изучить, будет 'sys.database_permissions' –