错误无法解密受保护的 XML 节点 "DTS:Password" 和 SQL 服务器数据工具标准版

error Failed to decrypt protected XML node "DTS:Password" and SQL Server Data Tools Standard Edition

我有一个 SSIS 包,用于从网络服务获取数据并插入到 SQL 服务器(使用 OLEDB 连接与 sql 用户和 mu 保护级别是 EncryptSensitiveWithUserKey)。

但我想通过使用文件系统包源在 SQL Ad-hoc 服务器上添加代理作业。

因此,作业代理将在 SQL Ad-Hoc Server 上执行,但在包内将从 Web 服务获取数据并导入到另一台服务器。

我在 SQL 服务器上执行代理作业时发现错误,如下所示:

#

代码:0xC0016016 来源:trade0010_gg 描述:无法解密受保护的 XML 节点 "DTS:Password" 错误 0x8009000B "Key not valid for use in specified state."。你可能没有被授权 访问此信息。当存在密码错误时会发生此错误。 验证正确的密钥是否可用。结束错误错误:2018-07-10 02:12:22.33


代码:0xC000F427 来源:Web服务任务描述:到运行一个SSIS包外 SQL Server Data Tools 您必须安装 Integration Services 标准版或更高版本。 结束错误 DTExec:程序包执行返回 DTSER_FAILURE (1)。开始时间:2:12:20上午
完成:2:12:22 AM 已用:1.625 秒。包执行失败。该步骤失败。

#

我不确定这是 EncryptSensitiveWithUserKey 问题还是数据工具版本问题?因为我测试了另一个包,它只是通过在 SQL Server Ad-hoc 上使用代理作业(文件系统包源)将 csv 插入到 SQL SERVER Destination 并且它有效。

我的临时 SQL 服务器是 SQL 服务器 2017 和数据工具 2017。 我的目标 SQL 服务器是 SQL 服务器 2016 和数据工具 2012。

有人可以帮我解决这个问题吗?

非常感谢

我也不确定哪个错误是问题所在,但这是处理它们的方法:

EncryptSensitiveWithUserKey:避免敏感数据出现很多问题的一种方法是将加密级别更改为不保存敏感数据 .然后,在 SQL Agent 中,为您的连接配置密码。

Integration Services 版本:确保您在 adhoc 服务器(通过 SQL Agent 执行程序包的服务器)上安装了标准版或企业版.