Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
 Re: Помогите с безопасностью, как правильно настроить?  [new]
Lamazoid
Member

Откуда: Оттуда
Сообщений: 433
o-o
Lamazoid
Так и сделал. Забрал все права с таблицы используемой в функции. и получил следующее:

The SELECT permission was denied on the object 'GetOrgFromBase', database 'Posrednik', schema 'dbo'.

нет!
забрал права с самой функции


Функция [CheckUserAccess] Заработала.

А функция GetOrgFromBase нет. Причем в Permissions В Колонке Grant галка стоит SELECT. Остальные галки в Колонке Deny. А Если посмотреть Эффективные разрешения (Effectib Permissoins) - то там пусто. Куда можно рыть. Где найти того кто блокирует SELECT
У самого пользователя "умолчальная" роль db_datareader
5 окт 17, 12:57    [20845131]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с безопасностью, как правильно настроить?  [new]
Lamazoid
Member

Откуда: Оттуда
Сообщений: 433
Ураа !!! ЗАработало.
разрешение SELECT не работает если стоит Deny на Control.
Всем спасибо
5 окт 17, 13:05    [20845159]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с безопасностью, как правильно настроить?  [new]
Lamazoid
Member

Откуда: Оттуда
Сообщений: 433
ИЗ MSDN (https://msdn.microsoft.com/ru-RU/library/ms191291(v=sql.120).aspx)
CONTROL
Предоставляет возможности, схожие с владением. Имеющий это разрешение получает все установленные разрешения на защищаемую сущность. Участник, получивший разрешение CONTROL, может также предоставлять разрешения на защищаемую сущность другим участникам. ...
Как понять какие конкретно возможности предоставляет Это разрешение??? Что значит схожие с владением? Где найти более подробную расшифровку
5 окт 17, 13:14    [20845182]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с безопасностью, как правильно настроить?  [new]
o-o
Guest
Lamazoid
ИЗ MSDN (https://msdn.microsoft.com/ru-RU/library/ms191291(v=sql.120).aspx)
CONTROL
Предоставляет возможности, схожие с владением. Имеющий это разрешение получает все установленные разрешения на защищаемую сущность. Участник, получивший разрешение CONTROL, может также предоставлять разрешения на защищаемую сущность другим участникам. ...
Как понять какие конкретно возможности предоставляет Это разрешение??? Что значит схожие с владением? Где найти более подробную расшифровку

под проблемным юзером опрашиваем
select *
from sys.fn_my_permissions('dbo.GetOrgFromBase', 'object')

подставив нужный объект.

если вы типа выдавали селект, а тут его вдруг нет, значит есть явный денай.
самому ли юзеру, его ли группе/роли.
значит, опрашиваем sys.database_permissions на предмет DENY:
select *
from sys.database_permissions
where state_desc = 'deny' and major_id = object_id('dbo.GetOrgFromBase')


видим явный денай, начинаем думать.
кто же интересно контрол заденаил?

про права вроде все хорошо в хэлпе написано.
контрол это наибольшее, что можно поиметь,
ну т.е. все остальные права в себя включает.

вот в этом смысле и схожее с владением:
у владельца есть контрол на то, чем владеет,
плюс он владелец, владельцев всегда ровно 1, а контрол можно выдать всем
5 окт 17, 13:35    [20845261]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с безопасностью, как правильно настроить?  [new]
o-o
Guest
для тех, кто по ид юзера не ориентируется, добавляем расшифровку юзера (user_name(grantee_principal_id)):
select *, user_name(grantee_principal_id) as user
from sys.database_permissions
where state_desc = 'deny' and major_id = object_id('staging.ddl_hist')
5 окт 17, 13:37    [20845280]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с безопасностью, как правильно настроить?  [new]
Lamazoid
Member

Откуда: Оттуда
Сообщений: 433
o-o,

Спасибо Вам за разъяснения.
5 окт 17, 13:44    [20845308]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2]      все
Все форумы / Microsoft SQL Server Ответить