SQL代理作业 - “运行方式”下拉列表为空(SQL Agent Job - “Run As” dr

2019-07-31 03:43发布

为什么“运行方式”下拉列表总是空的,当我尝试建立一个SQL代理作业? 我试图建立一些SQL代理作业使用一个代理帐户来运行。 我是SQLAgentUserRole,SQLAgentReaderRole和SQLAgentOperatorRole的成员。 当我尝试一个步骤添加到作业,我选择SQL Integration Services包和运行方式下拉列表是空的。

任何人谁是系统管理员可以查看该代理。 我不应该能够使用代理服务器作为SQLAgentUserRole,SQLAgentReaderRole和SQLAgentOperatorRole的一员? 我缺少的是在这里吗?

(代理帐户是活动的子系统:SQL集成服务计划,这是SQL Server 2008 R2中)

编辑 -

MSDN :“这些数据库角色(SQLAgentUserRole,SQLAgentReaderRole和SQLAgentOperatorRole)可以查看和执行工作,他们自己的,并创建为现有的代理帐户运行作业步骤的成员。” 而在固定服务器角色这个其他文章中提到了访问权限可授予代理,但它没有提到如何做到这一点: MSDN 。

Answer 1:

我发现这个问题的答案。 谁不管理员用户必须访问明确授予他们的角色或用户名代理帐户:

要授权给代理帐户的非系统管理员

  1. 在对象资源管理器中,展开一个服务器。
  2. 展开SQL Server代理。
  3. 展开代理,展开子系统节点的代理,右键单击您要修改的代理,然后单击属性。

在常规页面,您可以更改代理帐户的名称,证书,或它使用的子系统。 在校长页面,您可以添加或删除登录名或角色授予或取消访问代理帐户。

http://msdn.microsoft.com/en-us/library/ms187890(v=sql.100).aspx



Answer 2:

不,你不应该。 你刚才提到的角色的各位委员只能创建为themselfes,因为它们是无管理角色运行作业。 如果你想运行使用antoher用户的作业,你需要访问代理帐户。 如果我没有记错的话,可以访问创建代理帐户的唯一组是系统管理员,所以你需要一个管理员来为你做的。

sysadmin角色的成员有权创建不指定代理,而是作为运行SQL Server代理服务帐户,该帐户是用来启动SQL Server代理帐户的作业步骤。



Answer 3:

  1. 当编辑作业步骤- 切换到左侧的“高级”选项卡 ,请不要使用下拉菜单在主页上。
  2. 确保用户被授予在任务数据库的作用,即使他是一个“系统管理员”


文章来源: SQL Agent Job - “Run As” drop down list is empty