2013-05-13 4 views
3

Я 3 хранимые процедуры - SP1, SP2 & SP3.SQL Server 2008 Уровни доступа

SP2 и SP3 называются в SP1.

Если я создаю DBRole (и идентификатор пользователя) и предоставить доступ ехес для SP1 в одиночку, и выполнить SP1 будет SP2 & SP3 запускается на выполнение без проблем разрешения?

Или нам нужно предоставить явным образом выполнить доступ к SP2 & SP3, а?

ответ

0

Вы должны иметь доступ к ним всех, но вы можете использовать EXECUTE AS «другим пользователем», чтобы получить привилегии для других процедур:

MSDN Documentation

+0

Спасибо большое за ответ. – Skumar

0

Если два объекта имеют одного владельца в базе данных, и один объект ссылается на другую, формирует цепочку собственности. В этом случае сервер SQL будет проверять разрешение только на связанный объект. Это не будет проверить разрешение на упомянутый объект.

Example How Permissions Are Checked in a Chain