我有一个用于连接Oracle的SSIS包。我在SSIS中使用Oracle Provider for OLEDB连接管理器。我已经指定了我的服务器名称,用户名和密码,选中了“允许保存密码”复选框。它在我的机器上正常运行但是当我将副本提供给另一个开发人员时,他无法运行,因为他获得了空密码错误。有没有办法在SSIS包中保存密码,这样我们就不用担心了?
答案 0 :(得分:5)
您的目标是Package Protection Level
。默认情况下,它设置为EncryptSensitiveWithUserKey
。这意味着,所有密码都使用作者Windows帐户进行加密。一旦其他用户尝试加载包,密码就会丢失。
此软件包属性还有其他一些选项。一种选择是使用EncryptSensitiveWithPassword
或EncryptAllWithPassword
。使用这些选项,只要他/她有密码,任何人都可以打开包运行。
另一种选择是使用选项DontSaveSensitive
。然后,您将使用Oracle Connectionmanager的表达式覆盖密码或完整连接字符串。我可以确认这个工作正常,我们多年来一直在使用这种方法来处理Oracle密码。由于此选项导致系统上的密码未加密,因此您需要确保以其他方式保护密码。
进一步阅读:https://msdn.microsoft.com/en-us/library/ms141747.aspx
答案 1 :(得分:0)
您可以使用XML配置文件来存储密码,但由于它们以明文形式存储,因此建议采取其他安全措施来保护文件免受窥探。
This MSDN blog说明了如何非常好地添加和使用配置文件。