共用方式為


威脅和弱點安全防護 (複寫)

本主題描述可減輕複寫拓撲威脅的技術。

加密

加密是將資料轉換成一種無特殊金鑰便無法讀取格式的處理,這樣一來就只有預期收件者才能讀取該資料。 複寫不會加密資料表中儲存的資料,或透過網路連接傳送的資料。 這是設計所限,因為加密可在傳輸層使用數種技術提供,包括下列業界標準技術:虛擬私人網路 (VPN)、安全通訊端層 (SSL) 及 IP 安全性 (IPSEC)。 建議對複寫拓撲中電腦之間的連接使用這些加密方法中的一種。 如需詳細資訊,請參閱<啟用 Database Engine 的加密連接 (SQL Server 組態管理員)>。 如需有關透過網際網路使用 VPN 與 SSL 複寫資料的資訊,請參閱<保護透過網際網路的複寫>。

如果使用 SSL 保護複寫拓撲中電腦之間的連接,請將每個複寫代理程式的 -EncryptionLevel 參數值指定為 12 (建議使用 2 值)。 值 1 會指定使用加密,但代理程式不會確認 SSL 伺服器憑證是否由受信任簽發者簽署;值 2 則會指定對憑證進行確認。 可在代理程式設定檔和命令列中指定代理程式參數。 如需詳細資訊,請參閱:

針對資料庫「主要金鑰」,複寫採取下列行為來加密資料:

  • 如果複寫涉及的資料庫 (發行集資料庫、訂閱資料庫或散發資料庫) 中存在「主要金鑰」,則複寫會用 SQL Server 2012 資料庫對稱金鑰來加密及解密該資料庫中的代理程式密碼。 如果使用了「主要金鑰」,則應在複寫涉及的所有資料庫中都建立「主要金鑰」。 如需有關建立「主要金鑰」的詳細資訊,請參閱<CREATE MASTER KEY (Transact-SQL)>。

  • 複寫不會複寫「主要金鑰」。 若要求「訂閱者」端的「主要金鑰」,則必須先用 BACKUP MASTER KEY 將主要金鑰從發行集資料庫中匯出,然後再用 RESTORE MASTER KEY 將其匯入訂閱資料庫。 如需詳細資訊,請參閱<BACKUP MASTER KEY (Transact-SQL)>和<RESTORE MASTER KEY (Transact-SQL)>。

  • 如果針對可附加訂閱資料庫定義「主要金鑰」,則請使用<sp_attachsubscription (Transact-SQL)>中的 @db_master_key_password 參數來指定「主要金鑰」的密碼。 此操作可將資料庫附加到「訂閱者」。

如需加密和「主要金鑰」的詳細資訊,請參閱<加密階層>。

複寫讓您可以發行加密的資料行資料。 若要在訂閱者端解密及使用此資料,於發行者端用來加密資料的金鑰也必須存在訂閱者端。 複寫並不會提供用於傳輸加密金鑰的安全機制。 您必須以手動方式於訂閱者端重新建立加密金鑰。 如需詳細資訊,請參閱<複寫加密資料行中的資料 (SQL Server Management Studio)>。

請參閱

概念

識別和存取控制 (複寫)

安全性概觀 (複寫)

安全程式開發 (複寫)

安全的部署 (複寫)