Роли баз данных служб Notification Services

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

Роли баз данных

Все базы данных экземпляра и приложений содержат одинаковые роли баз данных служб Notification Services. В следующей таблице содержатся эти роли и их разрешения.

ms171396.note(ru-ru,SQL.90).gifПримечание.
Несмотря на то что роли баз данных и их разрешения могут быть изменены участниками фиксированной серверной роли sysadmin, ролей баз данных db_owner или db_securityadmin, компания Microsoft не рекомендует изменять разрешения, предоставленные этим ролям, поскольку измененные роли усложняют определение эффективных разрешений.

Роль

Разрешения

NSAnalysis

Может выполнять хранимые процедуры, создающие отчеты для анализа производительности и устранения неполадок.

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

Эта роль также обладает разрешениями роли NSReader.

NSAdmin

Может включать и отключать экземпляры, приложения и компоненты.

Участники роли базы данных db_owner, а также фиксированных серверных ролей sysadmin и dbcreator также могут включать и отключать экземпляры, приложения и компоненты.

NSDistributor

Может выполнять хранимые процедуры, исполняющие операции SELECT и UPDATE на рабочих таблицах уведомлений и распространителей.

Распространителям требуются разрешения, предоставляемые этой роли. Когда распространители расположены на собственном сервере, необходимо добавить учетную запись, используемую службой Microsoft Windows, к этой роли. Если распространители расположены на том же сервере, что и внутрипроцессные поставщики событий и генератор, то используйте роль NSRunService.

Эта роль также обладает разрешениями роли NSReader.

NSEventProvider

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

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

Эта роль также обладает разрешениями роли NSReader.

NSGenerator

Может выполнять хранимые процедуры, используемые генератором.

Генераторам требуются разрешения, предоставляемые этой роли. Когда генератор расположен на собственном сервере, необходимо добавить учетную запись, используемую службой Windows, к этой роли. Если генератор расположен на том же сервере, что и внутрипроцессные поставщики событий и распространители, то используйте роль NSRunService.

Правила в файле определения приложения (ADF-файл) выполняются с использованием разрешений этой роли.

Эта роль также обладает разрешениями роли NSReader.

NSReader

Может выполнять хранимые процедуры, считывающие метаданные экземпляра и приложений.

NSRunService

Эта роль обладает комбинированными разрешениями ролей NSEventProvider, NSGenerator, NSDistributor, NSReader, NSMonitor и NSVacuumer. Для службы Windows NS$имя_экземпляра требуются эти разрешения для оценки подписок и создания уведомлений.

Если внутрипроцессные поставщики событий, генератор и распространители запускаются на одном и том же сервере, то назначьте эту роль учетной записи, используемой службой Windows NS$имя_экземпляра для доступа к SQL Server. В противном случае присвойте соответствующие разрешения посредством ролей NSEventProvider, NSGenerator и NSDistributor.

NSSubscriberAdmin

Может выполнять хранимые процедуры, осуществляющие чтение, обновление и удаление из таблиц, относящихся к подписчикам и подпискам.

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

ms171396.note(ru-ru,SQL.90).gifПримечание.

Службы Notification Services автоматически осуществляют каскадное удаление записи подписчика для всех соответствующих подписок во всех приложениях, даже если пользователь, удаляющий запись подписчика, не имеет доступа к базам данных приложений. Удаление подписки выполняется с использованием разрешений владельца базы данных.

Эта роль также обладает разрешениями роли NSReader.

NSVacuum

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

Эта роль также обладает разрешениями роли NSReader.

Чтобы просмотреть разрешения, назначенные этим ролям баз данных, используйте системную хранимую процедуру sp_helprotect.

См. также

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

Требуемые разрешения для развертывания и администрирования служб Notification Services

Другие ресурсы

sp_helprotect (Transact-SQL)

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

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