【问题标题】:SSIS won't save DB passwordSSIS 不会保存数据库密码
【发布时间】:2019-11-01 11:56:00
【问题描述】:

我正在尝试测试 SSIS 包。我有一个指向 SQL Server DB 的连接管理器。我编辑连接管理器,选择了我想要的 SQL Server 身份验证。用户名字段填写“sqlServerUser”,但密码字段为空白。我填写密码字段,选中“保存我的密码”,测试连接成功,然后单击确定。

但是当我运行包时,它说用户“sqlServerUser”的登录失败。我再次编辑连接管理器,密码字段再次为空。

如果软件包不保留凭据,我将无法对其进行测试。我该如何解决这个问题?

【问题讨论】:

  • 这就是它的工作方式。否则,您的密码将以明文形式保存。在第一种情况下,我建议使用 Windows 身份验证,而不是 SQL 身份验证。如果这对您不起作用,请查看“SSIS 包保护级别”。
  • 请检查并发布您的包裹保护级别。尝试将其更改为通过用户密钥加密进行测试。

标签: ssis


【解决方案1】:

在不更改 DontSaveSensitive 的包保护级别的情况下解决此问题的唯一方法是使用嵌入了连接管理器的连接字符串的配置文件。密码可以保存在dtsConfig文件中。

例子:

  <Configuration ConfiguredType="Property" Path="\Package.Connections[DBConnection].Properties[ConnectionString]" ValueType="String">
    <ConfiguredValue>Data Source=192.168.45.21;User ID=sqlServerUser; password=myPassword; Initial Catalog=MyDB;Provider=SQLNCLI11.1;Persist Security Info=True;Auto Translate=False;</ConfiguredValue>
  </Configuration>

【讨论】:

    【解决方案2】:

    如果您的身份验证是通过 SQL Server 身份验证,您可以使用连接管理器的表达式并将连接字符串保存在项目参数中。

    Connection string on project parameter

    Add expressions for the Connection Manager

    因此,连接将始终保留在 package\Solution。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-03-31
      • 2017-01-05
      • 1970-01-01
      • 1970-01-01
      • 2020-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多