У меня есть ряд хранимых процедур, которые выбирают данные из БД.У меня есть роль (cctc_reader), которая имеет разрешения на выполнение, предоставленные для процедур.Одна из процедур вызывает другую хранимую процедуру с именем recControl_system_option
, которая в свою очередь запрашивает Information_schema.columns
.
Проблема в том, что в этом процессе запрос
select column_name from information_schema.columns where table_name = 'recControl_manager'
не возвращает никаких записей.cctc_reader имеет права на:
- каждый выбранный процесс
recControl_system_option
, поэтому теоретически это должно работать.У меня нет проблем при запуске под dbo.
Если я предоставляю db_datareader для cctc_reader, запрос в порядке, но я не хочу предоставлять разрешения на чтение для всех таблиц (поэтому я и использовал хранимые процедуры).Я попытался предоставить разрешения Select для Information_schema в Master db, как предлагалось в некоторых статьях, но все еще не могу заставить это работать.
Есть предложения?