Компонент Service Broker - сохраненный Proc, извлекающий данные из нескольких баз данных - PullRequest
0 голосов
/ 02 декабря 2011

Мы используем SQL Service Broker для вызова хранимого процесса.Этот сервисный брокер работает нормально, когда мы вызываем хранимый процесс, который выполняется из одной базы данных.Но когда он вызывает другой Stored Proc, который извлекает данные из нескольких баз данных, выдает ошибку «Принцип сервера не может получить доступ к« databseB »в текущем контексте безопасности».Обе базы данных используют одинаковые логин и имя пользователя.Я пытался обновить имя пользователя в соответствии с веб-сайта Microsoft.Я перепробовал разные вещи, но все еще не увенчался успехом.Но этот сохраненный Proc, когда выполняется нормально, выполняется без проблем.Но при вызове из сервисного брокера это не удалось.Любая идея, в чем может быть проблема.

1 Ответ

0 голосов
/ 03 декабря 2011

Это проблема с разрешением. Добавление пользователя в роль базы данных db_owner должно решить эту проблему.

Также установите для баз данных значение Trustworthy on.

...