为 Notification Services 实例配置 SQL Server 权限

Notification Services 引擎必须能连接到包含该实例的数据库 SQL Server 数据库引擎 实例;为此,它必须具有对那些数据库的必要权限。

身份验证模式

Notification Services 引擎可以使用 Microsoft Windows 身份验证,也可以使用 SQL Server 身份验证连接到其数据库。

  • 如果使用 Windows 身份验证,则引擎使用其 Windows 帐户连接到数据库服务器。启动实例之前,请必须确保 Windows 帐户具有登录到数据库服务器的权限,并且对 Notification Services 实例使用的每个数据库具有适当权限。
  • 如果无法使用 Windows 身份验证,可以通过在注册 Notification Services 实例时指定 SQL Server 登录名和密码来使用 SQL Server 身份验证。启动实例之前,请必须确保 SQL Server 登录名存在于数据库服务器上,并且对 Notification Services 实例使用的每个数据库具有适当权限。
ms172592.note(zh-cn,SQL.90).gif重要提示:
请尽可能使用 Windows 身份验证。

数据库权限

引擎用于连接到数据库的帐户必须对那些数据库具有适当权限。您可以通过在创建实例时 Notification Services 创建的数据库角色来授予权限。

如果 Notification Services 实例运行在一个计算机上,则将引擎使用的数据库帐户添加到每个实例数据库中的 NSRunService 角色。

如果宿主事件提供程序、生成器和分发服务器向外扩展到多个计算机,则每个计算机都有自己的引擎。您可以使用限制性更强的数据库角色使授予每个引擎的权限最小化:

  • 每个事件提供程序的数据库帐户必须属于 NSEventProvider 数据库角色。
  • 生成器的数据库帐户必须属于 NSGenerator 数据库角色。
  • 分发服务器的数据库帐户必须属于 NSDistributor 数据库角色。

NSRunService 数据库角色是上述角色的超集。

您必须授予对每个实例数据库的数据库权限。实例可以将一个数据库用于所有实例和应用程序数据,也可以使用多个数据库。自定义数据库名称在实例配置和应用程序定义中指定。如果不指定数据库名称,则默认实例数据库名称为 instanceNameNSMain,默认应用程序数据库名称为 instanceName + applicationName

如何管理 SQL Server 和数据库安全性

有关创建 SQL Server 登录帐户、创建数据库中的用户帐户以及将用户添加到数据库角色的详细信息,请参阅:

请参阅

概念

宿主 Notification Services 引擎
配置 Notification Services 的 Windows 帐户
Notification Services 数据库角色

帮助和信息

获取 SQL Server 2005 帮助