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