如何使用 dtutil 公用程式 (Dtutil.exe) 在 SQL Server 2005 中設定一批 SQL Server Integration Services (SSIS) 封裝的保護等級


本文將告訴您 Beta 版的 Microsoft 產品。本文中的資訊係依「現況」提供,如有變更恕不另行通知。

Microsoft 不提供本 Beta 版產品的一般產品支援。如需有關如何取得 Beta 版本支援的詳細資訊,請參閱隨附於 Beta 版產品檔案中的說明文件,或是造訪下載此版本產品的網站。

簡介


Microsoft SQL Server 2005 Integration Services (SSIS) 會在您部署 SSIS 封裝時,在用戶端電腦和伺服器電腦上實作安全性。您可以設定封裝的保護等級,對封裝進行加密,以保密封裝的屬性值。封裝包含 ProtectionLevel 屬性,您可以根據封裝需要的保護等級來設定 ProtectionLevel 屬性。

例如,在團隊開發環境中,可以使用只有處理封裝的團隊成員知道的密碼,對該封裝進行加密。您可以使用 SQL Server Business Intelligence Development Studio 或 dtutil 公用程式 (Dtutil.exe),輕鬆地為單一封裝設定密碼。但是,如果您必須處理很多封裝,最好的方法就是使用 dtutil 公用程式來設定批次 SSIS 封裝的保護等級。通常您可以在 .bat 檔案或 .cmd 檔案中加入各封裝的個別命令清單,然後執行該檔案。如果封裝儲存在相同的資料夾中,您可以使用簡短的命令,依序為該資料夾中所有的封裝設定。

其他相關資訊


試想下列狀況。
  • 您正在部署有預設保護等級的 SSIS 封裝。
  • 您必須使用密碼,將封裝傳送給其他知道密碼的團隊成員。
在這種情況下,您可以利用下面的命令,使用 dtutil 公用程式來設定這些封裝的保護等級。
for %%f IN (*.dtsx) DO dtutil.exe /File %%f /encrypt file;%%f;3;<promissory password>
注意
  • 您不必解密有預設保護等級的封裝,因為 SSIS 封裝的預設保護等級是
    EncryptAllWithUserKey 值。預設保護等級會以根據使用者設定檔的機碼來加密封裝。
  • 請加入 /q 參數以避免其他的提示。
  • 如果是在命令提示字元輸入這個命令,請使用一個百分比 (%) 符號。如果是在 MS-DOS 批次檔案內使用這個命令,請使用兩個百分比 (%%) 符號。
  • 在這個命令中,<promissory password> 是密碼的預留位置。
  • 這個命令實際上是循環執行下列命令。
    dtutil.exe /File %%f /encrypt file;%%f;3;<promissory password>
    保護等級在命令中是用參數的形式來設定,在這個範例中,保護等級是放在密碼之前,設定為 3。請根據您的需求,使用下表所述的其中一種保護等級。
等級描述
0解除機密資訊。
1機密資訊使用本機使用者認證加密。
2機密資訊使用必要的密碼加密。
3封裝使用必要的密碼加密。
4封裝使用本機使用者認證加密
5封裝使用 SQL Server 儲存體加密。
如需詳細資訊,請在命令提示字元中輸入下列命令:
dtutil /?Encrypt
當其他的團隊成員收到這些封裝時,可能必須將密碼變更為只有團對成員知道的密碼,或變更保護等級。團隊成員可以使用下面的命令,使用 dtutil 公用程式來變更這些封裝的密碼。
for %%f IN (*.dtsx) DO dtutil.exe /File %%f /Decrypt <promissory password> /encrypt file;%%f;3;<new password>

参考


如需有關如何使用 dtutil 公用程式設定 SSIS 封裝保護等級的詳細資訊,請參閱《SQL Server 2005 線上叢書》的下列主題:
  • <設定封裝的保護等級>(Setting the protection level of packages)
  • <Integration Services 的安全性注意事項>(Security considerations for Integration Services)
  • <封裝保護等級>(Package protection level)
  • <dtutil 公用程式>(dtutil utility)