SSIS连接管理器 - 开发中的SQL Auth,集成在生产中

时间:2016-10-27 19:52:19

标签: ssis sql-server-2016

我正在使用SQL 2016,我们正在转换一堆SSIS包(从2005年开始)。在我们的旧建筑中,我们有开发和生产。我们现在正在转向VSO中的源代码控制,我们正在进行部署。我们在开发人员机器上进行本地开发,然后我们发布到Dev,然后发布到QA,然后是Staging,然后是最终生产。

我们已经找到了如何使用SSIS环境变量(真棒!),并且我们能够使用SDT从Visual Studio内部运行本地开发机器上的文件。然后我们将项目部署到ispac文件,然后将其复制到Dev服务器并导入到SSMS中的SSIS目录中。然后在SSMS中,我们尝试更改每个环境的变量。

问题是数据连接。我将连接字符串和身份验证密码作为参数传递给共享连接。因此,连接在执行时从项目参数中读取这些值。然后我们将为每个环境更改这些值。事实证明,我们需要使用Integrated Security执行服务器。由于我们正在远程测试,因此我们无法在本地计算机上使用集成安全性。因此,本地开发人员基本上是SQL身份验证,但Dev,QA,Staging和Production环境都将使用集成安全性在服务器上进行测试。

我似乎无法正常工作。我有两个项目参数DB_ConnectionString和DB_Password。我还有一个共享连接(OLEDB SQL),它在包中进行参数化。我们使用项目参数进行连接,因此在执行时它使用项目参数来插入字符串和密码。

当我发布到现场时,我需要集成。所以我尝试将集成安全连接字符串放入DB_ConnectionString的环境密码中,然后需要密码。但这并不是真的有效。我收到连接错误。

SSIS错误代码DTS_OLEDBERROR "无效的授权规范"

1 个答案:

答案 0 :(得分:0)

如果你可以避免使用参数,我认为你会更好。发布到目录时,您可以根据您的环境设置连接字符串。这样,您可以在开发计算机上使用sql auth,并在任何服务器环境中运行时集成auth。