共用方式為


使用憑證簽署封裝

更新: 2006 年 12 月 12 日

SQL Server 2005 Integration Services (SSIS) 封裝可以使用憑證進行簽署,也可以設定為要求執行階段在載入封裝前檢查簽章。封裝的屬性 CheckSignatureOnLoadCertificateObject 會指出是否必須檢查憑證,並指定用來簽署封裝的憑證。用來簽署封裝的憑證必須已啟用程式碼簽章功能。

Integration Services 提供一個可用來管理載入已簽署和未簽署封裝之組織原則的登錄值。該登錄值也可以管理已簽署封裝之不受信任的簽章。關於用來簽署封裝的簽章狀態,BlockedSignatureStates 登錄值會使用下列定義:

  • 有效簽章」是指可以成功讀取的簽章。
  • 無效簽章」是指簽章的解密總和檢查碼 (由私密金鑰加密之封裝程式碼的單向雜湊) 與載入 Integration Services 封裝程序中導出的解密總和檢查碼不符。
  • 信任簽章」是指使用由信任根憑證授權單位簽署的數位憑證所建立的簽章。使用此設定時,簽署者不必出現在使用者的「受信任的發行者」清單中。
  • 不受信任的簽章」是指無法確認為信任根憑證授權單位所發出的簽章,或不是目前的簽章。

若要使用登錄值,以防止封裝在未簽署、擁有無效或不受信任的簽章時載入,您必須將 BlockedSignatureStates DWORD 值加入 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTS 登錄機碼,並指定 0、1、2 或 3 值。

下表列出 DWORD 資料的有效值及其相關聯的原則。

描述

0

沒有管理限制。

1

封鎖無效的簽章。

此設定不會封鎖未簽署的封裝。

2

封鎖無效及不受信任的簽章。

此設定不會封鎖未簽署的封裝,但是會封鎖自我產生的簽章。

3

封鎖無效和不受信任的簽章以及未簽署的封裝。

此設定也會封鎖自我產生的簽章。

如果 BlockedSignatureStates 登錄值的類型是 DWORD,而且登錄值不是 0、1、2 或 3,則 Integration Services 會將登錄值視為 3。如果 BlockedSignatureStates 不是設定為 DWORD,則 Integration Services 會將登錄值視為具有 0 值的 DWORD。

ms141174.note(zh-tw,SQL.90).gif附註:
BlockedSignatureStates 的建議設定為 3。此設定會提供最大程度的保護,以防範無效或不受信任的未簽署封裝或簽章。但是,建議設定未必適合所有情況。如需有關如何簽署數位資產的詳細資訊,請參閱 MSDN Library 中的<程式碼簽章簡介>(英文) 主題。

若要簽署封裝

請參閱

概念

Integration Services 封裝
Integration Services 的安全性考量

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2006 年 12 月 12 日

新增內容:
  • 新增有關 BlockedSignatureStates 登錄值的建議。
  • 新增有關其他簽署資訊的連結。

2006 年 4 月 14 日

新增內容:
  • 新增有關 BlockedSignatureStates 登錄值的資訊。
  • 新增含有 BlockedSignatureStates 實作程序之如何主題的連結。