SQL Server 加密
適用于:
SQL Server (所有支援的版本) Azure SQL Database ![]()
Azure SQL 受控執行個體
加密是透過金鑰或密碼的使用讓資料模糊化的程序。 這樣可以讓資料變成毫無用處,而不需要對應的解密金鑰或密碼。 加密並不能解決存取控制問題。 但是,若發生存取控制失靈的情形,加密可限縮資料遺失的風險以增強安全性。 例如,只要資料已加密,即使資料庫主機電腦設定不當而遭駭客取得敏感性資料,失竊的資訊就可能毫無用處。
重要
雖然加密是維護安全性的寶貴工具,但是不應該將它用於所有的資料或連接。 當您決定是否要實作加密時,請考慮使用者將如何存取資料。 如果使用者透過公用網路存取資料,可能需要資料加密來提高安全性。 但是,如果所有的存取都與安全的內部網路組態有關,則可能不需要加密。 每次使用加密時,都應該包含密碼、金鑰和憑證的維護策略。
注意
「傳輸層安全性」(TSL1.2) 的最新相關資訊位於 Microsoft SQL Server 的 TLS 1.2 支援。
您可以在 SQL Server 中使用加密來連線、資料和預存程式。 下列主題包含SQL Server加密的詳細資訊。
加密階層
SQL Server中加密階層的相關資訊。
選擇加密演算法
有關如何選取有效加密演算法的詳細資訊。
透明資料加密 (TDE)
有關如何以透明方式加密資料的一般資訊。
SQL Server 和資料庫加密金鑰 (資料庫引擎)
在SQL Server中,加密金鑰包含公用、私人和對稱金鑰的組合,可用來保護敏感性資料。 本節將說明如何實作及管理加密金鑰。
Always Encrypted (資料庫引擎)
確保以下人員無法存取加密資料:內部部署資料庫系統管理員、雲端資料庫操作員,或其他具備高權限但未經授權的使用者。
動態資料遮罩
對不具權限的使用者遮罩敏感性資料,以限制其曝光。
SQL Server 憑證與非對稱金鑰
使用公開金鑰加密的相關資訊。
相關內容
保護 SQL Server 的安全
如何協助保護SQL Server平臺的概觀,以及如何與使用者和安全性物件搭配使用。
Azure SQL Database安全性功能
的概觀Azure SQL Database保護資料、控制存取權和主動式監視的安全性概觀。
密碼編譯函式 (Transact-SQL)
有關如何實作密碼編譯函數的資訊。
ENCRYPTBYPASSPHRASE (Transact-SQL)
有關如何使用密碼來加密資料的資訊。
ENCRYPTBYKEY (Transact-SQL)
有關如何使用對稱金鑰來加密資料的資訊。
ENCRYPTBYASYMKEY (Transact-SQL)
有關如何使用非對稱金鑰來加密資料的資訊。
ENCRYPTBYCERT (Transact-SQL)
有關如何使用憑證來加密資料的資訊。
外部資源
Microsoft TechNet:SQL Server TechCenter:SQL Server 2012 安全性與保護
SQL Server安全性的目前資訊。
另請參閱
sys.key_encryptions (Transact-SQL)
SQL Server 和資料庫加密金鑰 (資料庫引擎)
備份與還原 Reporting Services 加密金鑰
啟用資料庫引擎的加密連接