Sql server 2012 尝试从存储过程运行SQL代理作业

Sql server 2012 尝试从存储过程运行SQL代理作业,sql-server-2012,jobs,sql-agent-job,Sql Server 2012,Jobs,Sql Agent Job,我有一个存储过程,它有一个executeas和一个服务帐户 该存储过程使用要启动的代理作业的名称调用sp_start_job 我已将服务帐户成员身份授予SQLAgentOperatorRole、SQLAgentReaderRole、SQLAgentUserRole、TargetServerRole和db_sisoperator。 我授予TargetServerRole执行sp_开始_作业和sp_停止_作业的权限 但仍然拒绝对对象“sp_start_job”的权限。 如果我更改客户端数据库上的数据

我有一个存储过程,它有一个executeas和一个服务帐户 该存储过程使用要启动的代理作业的名称调用sp_start_job

我已将服务帐户成员身份授予SQLAgentOperatorRole、SQLAgentReaderRole、SQLAgentUserRole、TargetServerRole和db_sisoperator。 我授予TargetServerRole执行sp_开始_作业和sp_停止_作业的权限

但仍然拒绝对对象“sp_start_job”的权限。
如果我更改客户端数据库上的数据库更改,则xp\u sqlagent\u上权限被拒绝的错误将\u启动。我不认为这是正确的方向,我想知道我还能做些什么来追踪这个问题。

你考虑过MSDB数据库的权限吗?最后我给它提供了对服务器的系统访问权限。这并没有消除错误。最终我放弃了executeas,并用自己的凭据运行它……没问题。不知道为什么该帐户会有这样的问题,即使在这里使用sysadmin access.VtC并将其推送到dba.stackexchange.com,这似乎更适合他们的用户群