Как вы, наверное, знаете, SQL Server не предоставляет готового решения для экспорта всех связанных с безопасностью операторов, которые объявлены для каждого элемента в базе данных (как на уровне базы данных, так и на уровне объектов)
Я говорю о возможности придумать эту информацию
- Все пользователи
- Все пользовательские роли
- Все разрешения на уровне базы данных (например, GRANT CREATE FUNCTION)
- Все разрешения на уровне объекта (например, GRANT SELECT ON OBJECT :: xxx)
Можно подумать, что SQL Server ДОЛЖЕН иметь что-то подобное, но ни мастер экспорта SQL Server, ни различные сценарии, сгенерированные в результате щелчка правой кнопкой мыши по объектам, не фиксируют эту информацию.
Я видел в Интернете много разных «возможных решений» с использованием не кураторских сценариев, которые любезно публикуют люди, но, поскольку я должен быть на 100% уверен, что вся информация о безопасности собрана, я не могу полностью полагаться на эти сценарии.
У меня есть возможность использовать их в качестве отправной точки, чтобы написать что-то самому, но я ненавижу заново изобретать колесо для требования, которое, как вы думаете, может иметь много людей.
Нет ли какого-либо инструмента, предоставленного кем-либо (в составе продукта SQL Server или стороннего инструмента), который мог бы надежно предоставить вам эту информацию?
Или, по крайней мере, есть сценарий, поддерживаемый сообществом, который большинство людей согласится «выполнит работу»?
Спасибо!
источник
Мне жаль, что вы не получили ответа со вчерашнего дня; вот, по крайней мере, отправная точка для вас.
Вы можете попробовать вытащить нужные вам кусочки. Как всегда, читайте цепочки обсуждений (к сожалению, я не смог найти сценарий, одобренный громкими именами, которые я узнаю, поэтому проверяйте внимательно! Разрешения на уровне схемы, объекта, сервера и столбца часто отсутствуют).
На самом деле я не использовал ни одного из них, но они представляют собой набор отправных точек, в произвольном порядке.
Список всех разрешений во всех базах данных
Автоматический аудит разрешений с помощью Powershell и T-SQL: часть 1
Разрешение сценариев для всех баз данных
Скрипт DB Level Permissions v2.1
Хранимая процедура для сценариев прав доступа пользователей
Запросы безопасности: уровень базы данных
Запросы безопасности: уровень сервера
источник
https://gallery.technet.microsoft.com/Extract-Database-dfa53d5a/
перейдите по этой ссылке, чтобы загрузить приведенный ниже код
источник