如何授予 SQL Server 作业所有者代理凭据的权限

Pre*_*gha 7 sql-server-2008-r2 sql-server-agent

  • 我创建了一个 Credential Cred1(DOMAIN\USER1 with the secret = domain password)
  • 我已经创建了一个 SQL 代理作业,所有者为 NT AUTHORITY\SYSTEM
  • 作业需要代理为凭证Cred1

因此,当我运行该作业时,它失败并显示不允许 NT AUTHORITY\SYSTEM 为 CmdExec 代理 1(我只有一个凭据)的消息。

“无法开始执行 step1(原因:JobOwner NT AUTHORITY\SYStem 没有使用代理 1 的权限”

我已经做了一些谷歌搜索所需的权限,我读到我需要让操作员访问 MSDB 中的 NT AUTHORITY\SYSTEM 登录名。我试过这个,但仍然没有运气。

小智 11

展开 SQL 代理
展开代理
找到您的代理,右键单击它并选择“属性”
转到“主体”选项卡
添加 NT AUTHORITY\SYSTEM 帐户

这将授予该帐户使用代理的权限。


小智 8

检查select * from msdb.dbo.sysproxies您的代理是否已启用,我们遇到了类似的问题,并使用启用 = 1 重新创建了代理。

这似乎已经解决了这个错误的问题。

  • 您可以[将其更新为启用](/sf/answers/3852249621/),而不是删除并重新创建(如果这样更容易)。 (2认同)