Разрешение sp_helptext
Мне нужно дать sp_helptext
разрешение разработчикам, чтобы они могли проверить процедуры магазина. Может кто-нибудь, пожалуйста, дайте мне знать, как я могу это сделать.
Спасибо Кристина
4 ответа
Я думаю grant execute on sp_helptext
это совершенно неправильный подход. Как сказал здесь Иисус Лопес, если вы хотите дать пользователю разрешения на просмотр всех определений объектов, вы должны использовать
GRANT VIEW DEFINITION TO your_database_user
или если вы хотите, чтобы пользователь видел определение объекта для конкретного объекта, вы должны использовать
GRANT VIEW DEFINITION ON dbo.YourProcedure TO your_database_user
,
Обратите внимание, что сначала вы должны добавить существующий логин сервера в качестве нового пользователя в базе данных. Затем вы сможете выбрать целевую базу данных, в которой был создан новый пользователь, а затем предоставить ему / ей разрешения с GRANT VIEW DEFINITION
заявление.
Синтаксис
Grant Execute on sp_helptext to user
и должен быть выполнен с master в качестве текущей базы данных.
Вы также можете сделать это через графический интерфейс, щелкнув правой кнопкой мыши по пользователю или процессу и перейдя в свойства. Точные шаги зависят от того, используете ли вы Enterprise Manager или SQL Management Studio.
Поочередно добавьте их к роли, у которой уже есть разрешения, общедоступный минимум.
exec sp_addrolemember 'public', 'user'
Формат команды должен быть
grant execute on sp_helptext to [DomainName\UserName] ;
Я не гуру SQL, но я бы подумал, что разработчикам также понадобится разрешение на чтение / выполнение хранимой процедуры, для которой они получают текст.