Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 tsql Наследование ролей  [new]
Nechto
Member

Откуда:
Сообщений: 804
Здравствуйте!
Я использую MSSQL Server 2012

Собственно из чего возник вопрос:
1. Создал две роль в Database role базы данных - роль1 и роль2
2. роль2 наследовал в роле1, через AFTER
3. роль1 присвоил пользователю

Теперь когда я делаю запрос к таблице, доступ к которой описан в роле2, то получаю ответ the update permission was denied ... .
Если эту же таблицу описать в роле1, то доступ есть.

Подскажите пожалуйста, как решить вопрос с доступом?
9 окт 19, 09:56    [21990098]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
Nechto
Member

Откуда:
Сообщений: 804
Nechto,
Опечатался
автор
2. роль2 наследовал в роле1, через ALTER
9 окт 19, 10:13    [21990115]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
Minamoto
Member

Откуда: Москва
Сообщений: 1084
Nechto
2. роль2 наследовал в роле1, через AFTER

Что это за AFTER такой? Лучше бы команды привели.
Если я правильно расшифровал ваше послание, то роль2 у вас входит в роль1, как следствие, получает права и явно выданные, и наследуемые от роли1.
Роль1 же при этом права от роли2 не наследует - с чего бы.
9 окт 19, 10:13    [21990116]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
Nechto
Member

Откуда:
Сообщений: 804
Minamoto,
Скорее так: роль1 должна наследовать права доступа из роли2 и передавать их пользователю.
9 окт 19, 10:20    [21990119]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
msLex
Member

Откуда:
Сообщений: 6674
Nechto
Minamoto,
Скорее так: роль1 должна наследовать права доступа из роли2 и передавать их пользователю.


Для этого нужно в роль2 включить роль1.
Как-то так
alter role роль2 add member роль1
9 окт 19, 11:14    [21990189]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
Nechto
Member

Откуда:
Сообщений: 804
msLex
Nechto
Minamoto,
Скорее так: роль1 должна наследовать права доступа из роли2 и передавать их пользователю.


Для этого нужно в роль2 включить роль1.
Как-то так
alter role роль2 add member роль1


Сделал как вы сказали - доступ появился :)

Только я не совсем понял куда я добавил зависимость? Я использую MSS Management studio, для администрирования базы данных
9 окт 19, 12:04    [21990253]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
msLex
Member

Откуда:
Сообщений: 6674
Nechto
msLex
пропущено...


Для этого нужно в роль2 включить роль1.
Как-то так
alter role роль2 add member роль1



Сделал как вы сказали - доступ появился :)

Только я не совсем понял куда я добавил зависимость? Я использую MSS Management studio, для администрирования базы данных

В свойствах "роль2", в списке Role Members
9 окт 19, 12:41    [21990287]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
Nechto
Member

Откуда:
Сообщений: 804
По какой-то причине Role Members в свойствах роли у меня нет. Есть только (General; Securables; Extended Properties)
9 окт 19, 12:51    [21990300]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
Сон Веры Павловны
Member

Откуда:
Сообщений: 5173
Nechto
По какой-то причине Role Members в свойствах роли у меня нет. Есть только (General; Securables; Extended Properties)

Не используйте для управления ролями/пользователями/логинами UI SSMS. Скриптами это всё делается намного быстрее и надёжнее.
9 окт 19, 13:35    [21990366]     Ответить | Цитировать Сообщить модератору
 Re: tsql Наследование ролей  [new]
Nechto
Member

Откуда:
Сообщений: 804
В любом случае спасибо за помощь!
Согласен что лучше все делать через запросы(команды), просто графический интерфейс это вроде как удобно)
10 окт 19, 08:08    [21991001]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить