Integration Services 角色(SSIS 服务)

SQL Server Integration Services 包括三个用于控制对包访问的固定数据库级角色:db_ssisadmindb_ssisltduserdb_ssisoperator。 角色只能在保存到 SQL Server 的 msdb 数据库中的包上实现。 可以使用 SQL Server Management Studio 将角色分配给包。 角色分配保存到 msdb 数据库中。

读取和写入操作

下表介绍了 Integration Services 中 Windows 和固定数据库级角色的读写操作。

角色

读操作

写操作

db_ssisadmin

sysadmin

枚举自己的包。

枚举所有包。

查看自己的包。

查看所有包。

执行自己的包。

执行所有包。

导出自己的包。

导出所有包。

在 SQL Server 代理中执行所有包。

导入包。

删除自己的包。

删除所有包。

更改自己的包角色。

更改所有包角色。

重要说明重要提示

db_ssisadmin 和 dc_admin 角色的成员可以将其特权提升为 sysadmin。 由于这些角色可以修改 Integration Services 包,而 SQL Server 使用 SQL Server 代理的 sysadmin 安全上下文可以执行 Integration Services 包,因此可以实现特权提升。 若要防止在运行维护计划、数据收集组和其他 Integration Services 包时提升特权,请将运行包的 SQL Server 代理作业配置为具有有限特权的代理帐户,或仅将 sysadmin 成员添加到 db_ssisadmin 和 dc_admin 角色中。

db_ssisltduser

枚举自己的包。

枚举所有包。

查看自己的包。

执行自己的包。

导出自己的包。

导入包。

删除自己的包。

更改自己的包角色。

db_ssisoperator

枚举所有包。

查看所有包。

执行所有包。

导出所有包。

在 SQL Server 代理中执行所有包。

Windows 管理员

查看所有正在运行的包的详细执行信息。

停止所有当前正在运行的包。

Sysssispackages 表

msdb 中的 sysssispackages 表包含保存到 SQL Server 中的包。 有关详细信息,请参阅 sysssispackages (Transact-SQL)

sysssispackages 表的列中包含关于分配给包的角色的信息。

  • readerrole 列指定对包具有读访问权限的角色。

  • writerrole 列指定对包具有写访问权限的角色。

  • ownersid 列包含创建包的用户的唯一安全标识符。 此列定义包的所有者。

权限

默认情况下,db_ssisadmindb_ssisoperator 固定数据库级角色的权限以及创建包的用户的唯一安全标识符适用于包的读取者角色,而 db_ssisadmin 角色的权限以及创建包的用户的唯一安全标识符适用于写入者角色。 用户必须是 db_ssisadmindb_ssisltduserdb_ssisoperator 角色的成员,才能拥有对包的读访问权限。 用户必须是 db_ssisadmin 角色的成员,才能拥有写访问权限。

对包的访问

固定数据库级角色可以与用户定义的角色结合使用。 用户定义的角色就是您在 SQL Server Management Studio 中创建的、随后用来为包分配权限的角色。 若要访问包,用户必须是用户定义的角色和相关的 Integration Services 固定数据库级角色的成员。 例如,如果用户是分配给包的 AuditUsers 用户定义角色的成员,他们必须也是 db_ssisadmindb_ssisltduserdb_ssisoperator 角色的成员,才能拥有对包的读访问权限。

如果不为包分配用户定义角色,则对包的访问权限由固定数据库级角色确定。

如果希望使用用户定义的角色,则在将它们分配给包之前,必须先将其添加到 msdb 数据库中。 您可以在 SQL Server Management Studio 中创建新的数据库角色。

Integration Services 数据库级角色可授予 msdb 数据库中的 Integration Services 系统表的权限。

必须启动 SQL Server(即 MSSQLSERVER 服务),才能连接到数据库引擎以及访问 msdb 数据库。

为了向包分配角色,您需要完成以下任务。

  • 打开对象资源管理器并连接到 Integration Services

    在使用 SQL Server Management Studio 将角色分配给包之前,必须在 SQL Server Management Studio 中打开对象资源管理器,并连接到 Integration Services。

    必须启动 Integration Services 服务才能连接到 Integration Services。

  • 将读取者角色和写入者角色分配给包

    可以将读取者角色和写入者角色分配给每个包。

相关任务

相关内容

Integration Services 图标(小) 使 Integration Services 保持最新

若要从 Microsoft 获得最新的下载内容、文章、示例和视频,以及从社区获得所选解决方案,请访问 MSDN 上的 Integration Services 页:


若要获得有关这些更新的自动通知,请订阅该页上提供的 rss 源。