Configure a User to Create and Manage SQL Server Agent Jobs

适用于: SQL Server(所有支持的版本) Azure SQL 托管实例

重要

Azure SQL 托管实例目前支持大多数(但不是所有)SQL Server 代理功能。 有关详细信息,请参阅 Azure SQL 托管实例与 SQL Server 的 T-SQL 区别

本主题介绍如何对用户进行配置以创建或执行 Microsoft SQL Server 代理作业。

开始之前

安全性

若要配置用户以创建或执行 Microsoft SQL Server 代理作业,必须先将某个现有 SQL Server 登录名或 msdb 角色添加到 msdb 数据库中的下列 SQL Server 代理固定数据库角色之一:SQLAgentUserRole、SQLAgentReaderRole 或 SQLAgentOperatorRole。

默认情况下,这些数据库角色的成员可以创建各自的作业步骤,这些作业步骤不执行其他作业步骤。 如果这些非管理用户要运行那些执行其他作业步骤类型(例如 SSIS 包)的作业,他们需要对代理帐户具有访问权限。 sysadmin 固定服务器角色的所有成员都有创建、修改和删除代理帐户的权限。 有关与这些 SQL Server 代理固定数据库角色相关的权限的详细信息,请参阅 SQL Server 代理固定数据库角色

权限

有关详细信息,请参阅实现 SQL Server 代理安全性

使用 SQL Server Management Studio

将 SQL 登录帐户或 msdb 角色添加到 SQL Server 代理固定数据库角色

  1. 对象资源管理器中,展开某个服务器。

  2. 展开 “安全性”,然后展开 “登录名”

  3. 右键单击要添加到 SQL Server 代理固定数据库角色的登录帐户,然后选择“属性”。

  4. “登录属性” 对话框的 “用户映射” 页上,选择包含 msdb的行。

  5. 在“数据库角色成员身份: msdb”下,选中适当的 SQL Server 代理固定数据库角色。

配置代理帐户以创建和管理 SQL Server 代理作业步骤

  1. 对象资源管理器中,展开某个服务器。

  2. 展开 “SQL Server 代理”

  3. 右键单击“代理”,再选择“新建代理”

  4. “新建代理帐户” 对话框的 “常规” 页上,指定新代理的代理名称、凭据名称和说明。 请注意,在创建 SQL Server 代理的代理帐户之前,必须先创建一个凭据。 有关创建凭据的详细信息,请参阅如何:创建凭据CREATE CREDENTIAL (Transact-SQL)

  5. 检查此代理的相应子系统。

    1. 操作系统 (CmdExec)
    2. SQL Server Analysis Services 查询
    3. SQL Server Analysis Services 命令
    4. SQL Server Integration Services 包
    5. PowerShell
  6. “主体” 页上,添加或删除登录名或角色,以授予或删除对代理帐户的访问权限。

另请参阅