我有一个 SSIS 包,它查询视图中的一些记录,然后使用数据库邮件发送电子邮件。我想将包部署到存在这些视图的 SQL Server,然后使用 SQL Server 代理安排我们,但我遇到了许多问题。
主要问题是在作业中有一个连接管理器,它存储了 SQL Server 帐户的凭据,该帐户可以访问视图和电子邮件配置文件。我已将包设置为 EncryptSensitiveWithPassword 而不是用户密钥,但我似乎找不到任何方法在作业运行时将该密码实际传递给 SQL Server 代理。因此,当它执行时,由于无法连接而失败。
一堆网站说要使用配置文件,但是当我走那条路时,它完全破坏了工作,抱怨无法建立 OLEDB 连接。在那种情况下,我什至无法在本地机器上运行该作业。
其他一些站点建议将包复制到机器上的本地 ssis 包存储中,但我只能通过 SQL Server Tools 访问机器,我无法远程进入或在文件系统上安装任何东西,所以我必须通过安装清单文件使用 SSIS 部署过程。
我已经阅读了一些关于将设置存储在另一个数据库表中的内容,但这再次提出了服务器权限的问题。
最后,我尝试在作业调度程序中传递 /password 或 /decrypt,但是当我单击“确定”时,调度程序会删除该参数。
这是一个内部服务器,安全性并不是一个大问题,知道如何以明文形式传递解密密码,或者只是告诉 SSIS 不要费心保护敏感数据吗?