一、问题

运行项目出现连接 SqlServer 异常:

  1. com.microsoft.sqlserver.jdbc.SQLServerException:
  2. 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。
  3. 错误:“The server selected protocol version TLS10 is not accepted by client preferences [TLS12]”。

QQ截图20220316164619.png

二、方案

  1. 打开jdk\jre\lib\securityjava.security文件;
  2. 全局搜索jdk.tls.disabledAlgorithms;
  3. 找到该位置,注释掉该处代码;
    1. jdk.tls.disabledAlgorithms=SSLv3, TLSv1, TLSv1.1, RC4, DES, MD5withRSA, \
    2. DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
    3. include jdk.disabled.namedCurves
    全部注释掉,如图:
    QQ截图20220316164955.png
    之后就可以正常运行项目了。

注意:
java.security文件在电脑上有两份,一份位于jdk/jre/lib/security目录下,一份位于jre/lib/security目录下,我们需要修改前者的文件。

正确文件位置如下图:
QQ截图20220316165416.png
错误文件位置如下图:
QQ截图20220316165450.png