SQL Server 代理作业不执行 SSIS 包权限错误

时间:2021-04-14 08:54:41

标签: sql sql-server ssis sql-agent-job

我正在尝试将 SSIS 包(上传文件)运行到我的 SQL Server 数据库。 在 SSIS 中创建 SSIS 包后,它将保存到 SSMS 上的文件夹中。 我已经设置如下:

enter image description here

我基本上拥有此实例的所有管理员权限。 当我尝试运行包时,我遇到了一个失败的提示:

<块引用>

04/14/2021 10:05:27,Testing SSIS,Error,1,XXXX\INSTANCE04,Testing SSIS,Upload,,Non-SysAdmins 已被拒绝在没有代理帐户的情况下运行 ANALYSISCOMMAND 作业步骤的权限。步骤失败

有时也会出现此错误:

04/14/2021 10:05:27,Testing SSIS,Error,1,XXXX\INSTANCE04,Testing SSIS,Upload,,Non-SysAdmins has been denied permission to run DTS Excecution jobs steps没有代理帐户。步骤失败

我计划稍后在此作业中运行多个包 如果有人可以帮助我将不胜感激!

1 个答案:

答案 0 :(得分:0)

您似乎正在处理分析服务模型或多维数据集。要解决此问题,请尝试以下操作:

1- 添加凭据(在 SQL Server 中存储 Windows 帐户凭据)

2- 添加代理并授予其处理和 SSAS 命令以及运行 ssis 包的权限

3- 向凭证中使用的帐户授予权限以处理 SSAS 模型或 立方体

4- 将作业配置为在新的代理帐户下运行

USE [master];
GO

CREATE CREDENTIAL [<domain\user>]
WITH
    IDENTITY = N'<domain\user>'
  , SECRET = N'<password>';
GO

USE [msdb];
GO

EXEC dbo.sp_add_proxy
    @proxy_name = N'SSAS_Processor'
  , @credential_name = N'<domain\user>'
  , @enabled = 1;
GO

EXEC dbo.sp_grant_proxy_to_subsystem
    @proxy_name = N'SSAS_Processor'
  , @subsystem_id = 10; --ssas command
GO

EXEC dbo.sp_grant_proxy_to_subsystem
    @proxy_name = N'proxy'
  , @subsystem_id = 11; --ssis package
GO

配置作业: enter image description here