徵狀
請試想下列案例:
-
您有 Microsoft SQL Server Integration Services (SSIS)2012或 SQL Server Integration Services (SSIS)2014專案。
-
您將 SSIS 套件的 ProtectionLevel 屬性設定為 EncryptSensitiveWithPassword。
-
您可以建立專案的 SQL 管理物件(SMO)連線管理器。
-
您為 [連線管理器] 設定使用者帳戶和密碼。
-
您執行 SSIS 專案。
在這種情況下,您會收到下列錯誤訊息:
DtsException: PassWord 的 "Salt" 屬性在專案資訊清單中找不到。 在 XMLSerializationHelper. DecryptByPassword (XmlNode xmlNode,字串密碼)的 DecryptXmlNode (xmlnode xmlNode,DTSProtectionLevel protectionLevel,字串 projectPassword,IDecryptionFailureHandler decryptionFailureHandler),請參閱(()。 ConnectionManagerItem ()。 LoadInternal (串流 stream、IDTSEvents 事件),在 ConnectionManagerItem (IDTSEvents 事件、串流串流)的(事件、資料流程資料流程)中,于() at ()上的()。 ConnectionManagerItem (EnumerateSharedConnectionProperties 儲存空間),在 microsoft. (SaveManifest 儲存) Microsoft.SqlServer.Dts.Runtime.ConnectionManagerItem.get_ConnectionManager atSaveTo (IProjectStorage)。在 DataTransformationServices (DataTransformationsProjectBuilder. IncrementalBuildThroughObj (IOutputWindow outputWindow)(DataTransformationServices DataTransformationsProjectBuilder)上的(BuildIncremental IOutputWindow)中,將(. outputWindow ()的()
注意: 只有當您在 managed 程式碼中使用連線管理器時,才會發生此問題。
解決方案
此問題最初是在 SQL Server 的後續累積更新中修正。
SQL Server 2014 的累積更新1 /en-us/help/2931693
SQL Server 2012 SP1 的累積更新8 /en-us/help/2917531
每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:
狀態
Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。