分享方式:


SQL Server 與用戶端加密摘要

本文摘要說明為 SQL Server 啟用加密的各種案例和相關程序,以及驗證加密是否正常運作的方法。

加密伺服器的所有連線 (伺服器端加密)

憑證類型 在伺服器屬性中強制加密 在每個用戶端上匯入伺服器憑證 信任伺服器憑證設定 加密連接字串中的屬性 註解
自我簽署憑證 - 由 SQL Server 自動建立 Yes 無法執行 Yes 忽略 SQL Server 2016 (13.x) 和較舊版本使用 SHA1 演算法。 SQL Server 2017 (14.x) 和更新版本使用 SHA256。 如需詳細資訊,請參閱 SQL Server 2017 中的自我簽署憑證雜湊演算法變更 (英文)。 不建議將此方法用於生產環境。
使用 New-SelfSignedCertificate 或 makecert 建立的自我簽署憑證 - 選項 1 Yes 忽略 不建議將此方法用於生產環境。
使用 New-SelfSignedCertificate 或 makecert 建立的自我簽署憑證 - 選項 2 Yes 選用 忽略 不建議將此方法用於生產環境。
公司的憑證伺服器或來自不在參與者清單 - Microsoft 信任的根計畫內的憑證授權單位 (CA) - 選項 1 Yes 忽略
公司的憑證伺服器或來自不在參與者清單 - Microsoft 信任的根計畫內的憑證授權單位 (CA) - 選項 2 Yes 選用 忽略
信任的根授權單位 選擇性 忽略 我們建議採用此方法。

加密來自特定用戶端的連線

憑證類型 在伺服器屬性中強制加密 在每個用戶端上匯入伺服器憑證 在用戶端上指定信任伺服器憑證設定 在用戶端將加密屬性手動指定為 [是]/[True] 註解
自我簽署憑證 - 由 SQL Server 自動建立 Yes 無法執行 Yes 忽略 SQL Server 2016 (13.x) 和較舊版本使用 SHA1 演算法。 SQL Server 2017 (14.x) 和更新版本使用 SHA256。 如需詳細資訊,請參閱 SQL Server 2017 中的自我簽署憑證雜湊演算法變更 (英文)。 不建議將此方法用於生產環境。
使用 New-SelfSignedCertificate 或 makecert 建立的自我簽署憑證 - 選項 1 No .是 Yes 不建議將此方法用於生產環境。
使用 New-SelfSignedCertificate 或 makecert 建立的自我簽署憑證 - 選項 2 No 選用 Yes 不建議將此方法用於生產環境。
公司的憑證伺服器或來自不在參與者清單 - Microsoft 信任的根計畫中的 CA - 選項 1 No .是 Yes
公司的憑證伺服器或來自不在參與者清單 - Microsoft 信任的根計畫中的 CA - 選項 2 No 選用 Yes
信任的根授權單位 No No 選擇性 Yes 我們建議採用此方法。

如何判斷加密是否正常運作?

您可以使用 Microsoft 網路監視器或網路 Sniffer 之類的工具來監視通訊,並檢查工具中所擷取封包的詳細資料,以確認流量已加密。

或者,您可以使用 Transact-SQL (T-SQL) 命令來檢查 SQL Server 連線的加密狀態。 若要這樣做,請遵循下列步驟:

  1. 在 SQL Server Management Studio (SSMS) 中開啟新的查詢視窗,並連線至 SQL Server 執行個體。
  2. 執行下列 T-SQL 命令來檢查 encrypt_option 資料行的值。 針對加密連線,該值會是 TRUE
SELECT * FROM sys.dm_exec_connections

另請參閱

下一步