Sql-Server

加密/解密 SSIS 任務的輸出和輸入

  • January 29, 2013

我使用 SSIS 包將來自一個系統的數據作為逗號分隔值輸出,然後將相同的數據導入第二個系統。我有一個新要求來加密由 SSIS 包生成的 CSV 文本文件,這意味著在導入其他系統時我還需要解密這些文本文件。

這種加密/解密可以使用 SSIS 之外的某種批處理來完成,但在 SSIS 內完成這一切似乎更自然。最好的方法是什麼?

通過 SSIS 加密文件是可能的,但是 SSIS 沒有真正簡單的本機解決方案。有大量的第三方產品可以幫助解決這個問題。時間就是金錢,所以這完全取決於您想花多少錢來嘗試提出定制的解決方案,或者只是去購買可以幫助您更快完成的東西。

在這篇部落格文章中有一篇很好的文章,它通過一些自定義 .NET 程式碼和一個 ScriptTask 來完成它。他還列出了一些提供解決方案的第三方產品。

如果您在兩端都使用 SQL Server 2005+,則可以使用數據庫加密。

Pinal Dave 的這篇文章給出了很好的概述。

您基本上必須在雙方設置一個伺服器主密鑰、一個數據庫主密鑰和一個對稱密鑰,並使用它們來加密/解密使用 ENCRYPTBYKEY() 和 DECRYPTBYKEY() 函式輸入和輸出的數據。訣竅是,您要確保在創建 DMK 和 SYMKEY 密鑰後將它們恢復到目的地,以便可以解密數據。

這是一個非常高的水平,但它應該讓你朝著正確的方向開始。

引用自:https://dba.stackexchange.com/questions/27044