2013-05-11 71 views
2

我通過在SQL Server上選擇自簽名證書來啓用安全連接。FireDAC SQL Server連接:不受信任的證書

我可以使用SQL Server Management Studio並加TrustServerCertificate=TrueAdditional Connection Parameters連接到它。

我需要FireDAC連接相同的配置,因爲它提供了類似的錯誤

SSL提供商:證書鏈是由當我嘗試連接不受信任

機構頒發。

如何告訴FireDAC? (Delphi XE4,FireDAC:8)

PS:我已經將自簽名證書添加到Windows「受信任的根證書頒發機構」中,但似乎FireDAC忽略了它。

感謝

回答

2

您應該添加ODBCAdvanced=TrustServerCertificate=yes到您的連接定義的參數。還要驗證您是否安裝了SQL Server Native Client。閱讀更多:

+0

謝謝,這解決了運行時的問題。我已將'TrustServerCertificate = yes'添加到TADPhysMSSQLDriverLink的ODBCAdvanced屬性中。但是如果我在設計時使ADConnection.connected = true,則會出現另一個錯誤,說明「SSL提供程序:目標主體名稱不正確」。因此,運行時連接正常,但設計時連接仍然存在問題。對此有何建議? – 2013-05-12 10:43:53

+0

我使用隧道代理的SQL連接。 (來自Indy,TidMappedPortTCP很棒)。我會嘗試另一臺有直接網絡連接的電腦,看看是否有相同的錯誤。 – 2013-05-12 10:48:20

+0

您應該將'ODBCAdvanced = ...'添加到TADConnection.Params或您的持久連接定義參數。 – 2013-05-12 12:41:44

相關問題