您目前已離線,請等候您的網際網路重新連線

當您在 FIPS 啟用的 Windows 上執行 SSIS 2012 封裝時發生錯誤

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:2925865
徵狀
假設您有 Microsoft SQL Server 2012 聯邦資訊處理標準 (FIPS) 已啟用伺服器上執行。在此情況下,當您執行或驗證 Microsoft SQL Server 整合服務封裝包含資料流程指令碼元件,會收到下列錯誤訊息:

System.InvalidOperationException: 這個實作不是驗證的 Windows 平台 FIPS 加密演算法的一部分。在 System.Security.Cryptography.MD5 CryptoserviceProvider..ctor
注意下列的登錄子機碼設為1時,就會發生這個問題:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
原因
之所以發生這個問題,是因為 SSIS 會使用 MD5 演算法。MD5 演算法不 FIPS 相容。
解決方案

服務套件資訊

若要修正這個問題,請將 Service Pack 3 取得 SQL Server 2012年。

如需有關 SQL Server 2012 Service Pack 3 (SP3) 的詳細資訊,請參閱 SQL Server 2012 Service Pack 3 中所修正的錯誤.
其他可行方案
若要解決這個問題,請嘗試下列方法:

  • 關閉伺服器上的 FIPS 原則。若要這麼做,請參閱下列的 TechNet 網站上的 「 若要設定 FIPS 原則設定 > 一節:注意事項

    • 您必須重新啟動應用程式的新設定才會生效。
    • 這個設定會影響在 Windows Server 中的下列登錄值:

      HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy\Enabled

      此登錄值會反映目前的 FIPS 設定。如果啟用此設定,則值是 1.如果已停用此設定,則值是 0.
  • 使用其他 Microsoft.NET 解決方案,而不是指令碼元件。

    附註 MD5 演算法是硬式編碼的資料流指令碼元件中。因此,您無法變更此指令碼元件。
其他相關資訊
SQL Server 整合服務會使用數個 Windows 的加密演算法不符合 FIPS 140-2 的密碼編譯模組的安全性需求。例如,SSIS 2012 使用 MD5。這並未遵守 FIPS 140-2,來計算雜湊值,未使用的安全性。FIPS 140-2 定義美國和加拿大地區政府用於驗證的實作密碼編譯的產品的安全性層級的安全性標準。
狀況說明
Microsoft 已確認這是<套用> 一節所列出的 Microsoft 產品的問題。

警告:本文為自動翻譯

內容

文章識別碼:2925865 - 最後檢閱時間:11/23/2015 05:39:00 - 修訂: 2.0

Microsoft SQL Server 2012 Enterprise

  • kbsurveynew kbtshoot kbexpertiseinter kbmt KB2925865 KbMtzh
意見反應
="https://c.microsoft.com/ms.js">