Sql-Server

即使在伺服器端啟用了強制加密,MS SQL Server 也接受非 SSL 連接

  • June 30, 2020

我在我的 SQL Server 上強制加密。我的意圖是拒絕任何不使用 SSL 連接的客戶端連接。我在正確的軌道上嗎?

這是我的詳細步驟:

  • makecert -r -pe -n “CN=slc02xla.company.com” -b 01/01/2000 -e 01/01/2036 -eku 1.3.6.1.5.5.7.3.1 -ss my -sr localMachine -sky exchange -sp “Microsoft RSA SChannel 加密提供程序” -sy 12 c:\my.cer
  • 我將相同的證書導入到受信任的根證書頒發機構儲存中
  • 在 SQL Server 配置管理器中,展開 SQL Server 網路配置,右鍵點擊協議,然後選擇屬性。
  • 在證書選項卡上,從證書下拉菜單中選擇所需的證書,然後點擊確定。
  • 在“標誌”選項卡上,在“強制加密”框中選擇“是”,然後點擊“確定”關閉對話框。
  • 重新啟動 SQL Server 服務。

我還缺少什麼嗎?

是的,這是正確的。此處還描述了啟用與數據庫引擎的加密連接(SQL Server 配置管理器) 也許這個討論也有幫助:force-encryption-on-sql-server-not-working

有兩種方法可以加密 SSL 連接。

  1. 為所有傳入的 SSL 客戶端請求配置伺服器。
  2. 選擇性客戶端配置。

在第一種情況下,如果您在伺服器上安裝了證書並設置“強制加密為是”,那麼無論哪個客戶端查詢連接,它將始終創建 SSL 連接。

在第二種情況下,您需要在伺服器和客戶端(信任根證書頒發機構儲存)機器上安裝相同的證書。然後它將為該客戶端創建 SSL 連接,否則它將無法建立 SSL 連接(前提是您檢查了加密連接SSMS)。如果未選中加密連接,則它將創建連接但不安全 (SSL)。

引用自:https://dba.stackexchange.com/questions/52246