Разрешения уведомления о запросе

Изменения: 14 апреля 2006 г.

Пользователю базы данных, выполняющему команду, в которой содержится запрос подписки на уведомления, должно быть предоставлено разрешение SUBSCRIBE QUERY NOTIFICATIONS в базе данных, в которой выполняется команда. В следующем примере приводится синтаксис инструкции GRANT.

use dbname
GRANT SUBSCRIBE QUERY NOTIFICATIONS TO database_principal

Владельцем подписки на уведомления является участник базы данных, выполнявший команду регистрации этой подписки. При удалении из базы данных этого участника все принадлежащие ему подписки на уведомления удаляются без предупреждений. Но операция удаления формирует предупреждение, в котором содержится количество запросов подписок на уведомление, удаленных в результате выполнения команды DROP.

Для успешного создания уведомления при помощи SqlDependency участник, создающий уведомление, должен иметь следующие разрешения в базе данных, на которой выполняется запрос.

  • CREATE SERVICE
  • CREATE QUEUE
  • CREATE PROCEDURE

Для получения уведомлений, пользователь-подписчик должен обладать разрешением RECEIVE на QueryNotificationErrorsQueue в базе данных, к которой относится подписка.

GRANT RECEIVE ON QueryNotificationErrorsQueue TO login

Кроме этого, требуется разрешение SEND на целевую службу:

GRANT SEND ON SERVICE:://theservice to login

Пользователь, выполняющий запрос, должен обладать разрешением SELECT на таблицы, доступ к которым необходим для формирования уведомлений.

Дополнительные сведения см. в разделе Разделы руководства по компоненту Service Broker.

См. также

Основные понятия

Участники

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

14 апреля 2006 г.

Измененное содержимое:
  • Ссылки на учетные записи или сервер-участник заменены ссылками на участников базы данных.