適用於:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Microsoft Fabric 中的 SQL 資料庫
加密是透過金鑰或密碼的使用讓資料模糊化的程序。 此程序會讓資料變成毫無用處,而不需要對應的解密金鑰或密碼。 加密並不能解決存取控制問題。 但是,若發生存取控制失靈的情形,加密可限縮資料遺失的風險以增強安全性。 例如,只要資料已加密,即使資料庫主機電腦設定錯誤而遭駭客取得敏感性資料,失竊的資訊就可能毫無用處。
雖然加密是維護安全性的寶貴工具,但是不應該將它用於所有的資料或連接。 當您決定是否要實作加密時,請考慮使用者將如何存取資料。 如果使用者透過公用網路存取資料,可能需要資料加密來提高安全性。 但是,如果所有的存取都與安全的內部網路組態有關,則可能不需要加密。 每次使用加密時,都應該包含密碼、金鑰和憑證的維護策略。
Note
「傳輸層安全性」(TLS 1.2) 的最新相關資訊位於 Microsoft SQL Server 的 TLS 1.2 支援。 如需 TLS 1.3 的詳細資訊,請參閱 TLS 1.3 支援。
本節內容
您可以在 SQL Server 中針對連線、資料和預存程序使用加密。 下列文章包含有關 SQL Server 中加密的詳細資訊。
-
有關 SQL Server 中加密階層的資訊。
-
有關如何選取有效加密演算法的詳細資訊。
-
有關如何加密待用資料的一般資訊。
-
在 SQL Server 中,加密金鑰包括用於保護機密資料的公開、私密和對稱金鑰的組合。 本節將說明如何實作及管理加密金鑰。
-
確保內部部署資料庫管理員、雲端資料庫操作員,或其他具有高權限但未經授權的使用者無法存取加密資料。 使用具有安全記憶體保護區的 Always Encrypted 擴充 Always Encrypted,以啟用就地加密和更豐富的保密查詢。
-
對不具權限的使用者遮罩敏感性資料,以限制其曝光。
-
使用公開金鑰加密的相關資訊。
相關內容
- 保護 SQL Server 的安全
- Azure SQL 資料庫安全性功能概觀
- 密碼編譯函數 (Transact-SQL)
- ENCRYPTBYPASSPHRASE(Transact-SQL)
- 加密金鑰 (Transact-SQL)
- ENCRYPTBYASYMKEY(Transact-SQL)
- ENCRYPTBYCERT(Transact-SQL)
- sys.key_encryptions (Transact-SQL)
- SQL Server 和資料庫加密金鑰 (資料庫引擎)
- 備份與還原 SQL Server Reporting Services (SSRS) 加密金鑰
- 設定 SQL Server 資料庫引擎來加密連線
- Microsoft TechNet:SQL Server TechCenter:SQL Server 2012 安全性與保護