我正在编写一个Spring启动应用程序,它使用MS Sql jdbc驱动程序连接到位于远程计算机上的SQL Server。
根据微软的文档,我启用了启用安全连接的setEncryption
选项。
春季启动版本为1.5.8
。
Ms Sql jdbc客户端版本
<mssql-jdbc.version>6.1.0.jre7</mssql-jdbc.version>
如何设置应该用于与服务器握手的TLS版本?
根据MS Doc,驱动程序应该使用JSSE中设置的ssl设置。
所以,我在application.yml
中添加了以下设置server:
ssl:
enabled: true
protocol: TLS
enabled-protocols: TLSv1.2
我认为这个配置应该通过spring boot来获取,最终由JSSE获取。
但这似乎不起作用。
Wireshark跟踪显示使用的tls版本仍为1.0
我搜索了很多,但没有找到任何直接的API或配置文件来将TLS版本配置设置为应用程序的JSSE。
我知道SSLContext与SSLContextFactory等可用于配置TLS版本和http / https调用。
但是我如何设置JSSE以便MS SQL Jdbc驱动程序使用该配置来创建连接。