Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
RuRed Member Откуда: Москва Сообщений: 19 |
Есть база данных. В ней есть таблицы в схеме manager. Эта схема специально создана для менеджера, и менеджер видит все таблицы в этой схеме соответственно. Вот скрипт добавления пользователя, который может проводить любые манипуляции в этой схеме. USE [master] GO CREATE LOGIN [test] WITH PASSWORD=N'1', DEFAULT_DATABASE=[club12], DEFAULT_LANGUAGE=[русский], CHECK_EXPIRATION=OFF, CHECK_POLICY=ON GO USE [club12] GO CREATE USER [test] FOR LOGIN [test] GO USE [club12] GO ALTER USER [test] WITH DEFAULT_SCHEMA=[manager] GO --manager USE [club12] GO ALTER AUTHORIZATION ON SCHEMA::[manager] TO [test] GO Вопрос, как запретить пользователю [test] удалять таблицы из схемы manager? Уважаемые коллеги, пожалуйста подскажите варианты решения... |
14 июл 19, 19:43 [21926437] Ответить | Цитировать Сообщить модератору |
invm Member Откуда: Москва Сообщений: 9644 |
|
||
14 июл 19, 19:48 [21926439] Ответить | Цитировать Сообщить модератору |
uaggster Member Откуда: Сообщений: 960 |
Триггером DDL уровня базы данных |
||||
15 июл 19, 09:02 [21926554] Ответить | Цитировать Сообщить модератору |
Владислав Колосов Member Откуда: Сообщений: 8340 |
RuRed,
Это взаимоисключающие требования. |
||||
15 июл 19, 13:28 [21926749] Ответить | Цитировать Сообщить модератору |
uaggster Member Откуда: Сообщений: 960 |
Да почему "взаимоисключающие"? Мой хрустальный шар говорит, что требование звучит так: "Запретить какое-либо изменение структуры, в т.ч. удаление, <<некоторых>> объектов схемы владельцу этой схемы". Ответ простой. Да, можно. 1. Создайте таблицу, в которой перечислите все "защищаемые" объекты. 2. Создайте DDL триггер уровня базы данных, который будет откатывать все изменения объектов, перечисленных в п.1. для пользователей, не входящих в ... группу или роль. Всё просто. Чего мучиться то? |
||||||
15 июл 19, 14:52 [21926828] Ответить | Цитировать Сообщить модератору |
RuRed Member Откуда: Москва Сообщений: 19 |
Владислав Колосов, кроме удаления таблиц=) |
15 июл 19, 23:17 [21927136] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |