一、问题
运行项目出现连接 SqlServer 异常:
com.microsoft.sqlserver.jdbc.SQLServerException:
驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。
错误:“The server selected protocol version TLS10 is not accepted by client preferences [TLS12]”。
二、方案
- 打开
jdk\jre\lib\security
下java.security
文件; - 全局搜索
jdk.tls.disabledAlgorithms
; - 找到该位置,注释掉该处代码;
全部注释掉,如图:jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \
DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
include jdk.disabled.namedCurves
之后就可以正常运行项目了。
注意:java.security
文件在电脑上有两份,一份位于jdk/jre/lib/security
目录下,一份位于jre/lib/security
目录下,我们需要修改前者的文件。
正确文件位置如下图:
错误文件位置如下图: