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

Откуда: Волгоград
Сообщений: 158
Доброго времени суток!

Подскажите плиз как решить проблему.
На одном MSSQL-сервере есть две базы (например DB1 и DB2).
В них есть две хранимые процедуры: [DB1].[dbo].[SP1] и [DB2].[dbo].[SP2].
При этом [SP1] вызывает [SP2].
Есть пользователь, который не имеет никаких прав в базе [DB2] (соответственно не может вызывать [SP2]), но имеет доступ к [DB1] и имеет права на запуск [SP1].

При попытке вызова [SP1] получаю сообщение об ошибке, что "principal is not able to access under current security context".
Как можно делегировать полномочия на вызов [SP2] из [SP1], не заводя пользователя в [DB2]?
6 июн 14, 16:10    [16133692]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с доступом при вызове одной ХП из другой  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37067
Читать про cross-database ownership chaining.
6 июн 14, 16:13    [16133721]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с доступом при вызове одной ХП из другой  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
stomsky,

либо заводить пользователя в DB2, либо давать в DB2 гостевой доступ. и в том, и в другом случае, прав можно не давать в DB2 ни на что вообще. достаточно права connect в бд. после этого уже смотреть что с cross-database ownership chaining
6 июн 14, 16:30    [16133874]     Ответить | Цитировать Сообщить модератору
 Re: Проблема с доступом при вызове одной ХП из другой  [new]
stomsky
Member

Откуда: Волгоград
Сообщений: 158
Пересмотрели порядок доступа.
Решили пустить в [DB2] и дать права на [SP2].
Спасибо всем откликнувшимся!
6 июн 14, 17:09    [16134183]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить