Я создал приложение C#, которое считывает конфигурационный файл, получает строки подключения, и для каждой строки подключения он считывает список хранимых процедур для дальнейшей обработки. Теперь я сталкиваюсь с некоторыми проблемами с разрешениями. При разработке приложения я использовал строки подключения с пользователями уровня dbo. строки подключения реальной жизни для пользователей SQL только с DataReader и datawriter разрешений, но когда я исполнюПроблема с разрешениями доступа к базам данных (sql server 2008)
select user_name(uid) as owner, name from dbo.sysobjects where type='P' order by name asc
, чтобы получить список проки с использованием такого пользователя, запрос не возвращает записи (хотя она возвращает проки, если я выполнить как dbo)
Я не хочу давать дополнительные разрешения пользователям в цепочках подключений по соображениям безопасности, поэтому мой вопрос: как может пользователь, имеющий только разрешения datareader/datawriter, получить список сохраненных процедур или если это невозможно, каковы минимальные разрешения, которые должен иметь пользователь для доступа к этой информации?
Я использую SQL Server 2008
как в стороне: на SQL Server 2005 и выше, Я бы использовал 'sys.procedures', а не устаревшие« sysobjects ». См. Документы MSDN по sysobjects здесь: http://msdn.microsoft.com/en-us/library/ms177596.aspx –