2024年4月19日发(作者:)

SQL Server 2005代理服务安全性增强: 若要使用SQL Server代理,用户必须是下列

一个或多个固定数据库角色的成员: SQLAgentUserRole SQLAgentReaderRole

SQLAgentOperatorRole 这些角色存储在msdb数据库中 任何用户都不是这些数据库

角色的成员,必须显式a授予这些角色中的成员身份 sa可以完全访问SQL Server代理

如果用户不是其中某个角色的成员,连接到SQL Server Management Studio中的

SQL Server时,对象资源管理器中的"SQL Server代理"将不可见。用户必须是这些固定数

据库角色之一的成员,或者是sysadmin固定服务器角色的成员才能使用SQL Server代理。

SQL Server代理安全性原则: 专门为代理创建专用的用户账户,并且只使用这些代理

用户账户来运行作业步骤。只为代理用户账户授予必需的权限。只授予运行分配给给定代

理账户的作业步骤实际所需的那些权限。不要作为Windows Administrators组成员的

Microsoft Windows账户运行SQL Server代理服务。

较高特权的角色继承较低特权的角色对SQL Server代理对象(包括警报、运算符、作

业、计划和代理)的权限

SQLAgentUserRole权限: SQLAgentUserRole是具有最低特权的SQL Server代理

固定数据库角色。SQLAgentUserRole的成员只对它们所拥有的本地作业和作业计划拥有

权限。它们不能使用多服务器作业(主服务器作业和目标服务器作业),也不能通过更改作业

所有权来获得对它们还没有拥有的作业的访问权限。SQLAgentUserRole的成员只能在

SQL Server Management Studio的"作业步骤属性"对话框中查看可用的代理列表。在

SQL Server Management Studio对象资源管理器中,SQLAgentUserRole的成员只能看

到"作业"节点。

SQLAgentUserRole对SQL Server代理对象的权限-->见下列表:

操作 运算符 本地作业(仅限于所拥有的作业) 作业计

划(仅限于所拥有的计划) 代理

创建/修改/删

除 否 是

视图列表(枚

举) 是 是

启用/禁

用 否 是

视图属

性 否 是

执行/停止/开始 不适用

用 不适用

查看作业历史记录 不适用

用 不适用

删除作业历史记录 不适用

用 不适用

不适

不适

不适

不适