WGCLOUD监控sqlserver报错javax.net.ssl.SSLHandshakeException: The server selected protocol version TLS10

一、问题描述:
        项目工程需求要连接 SqlServer 服务器,但是报错了,完整错误如下:com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client preferences [TLS12]”。

翻译成中文:SqlServer 服务器只接受 TLS1.0,但是客户端给的是 TLS1.2。


二、解决方案:

找到 jdk11\conf\security 下java.security 文件

1. 把 jdk.tls.disabledAlgorithms 配置项中 TLSv1 删除,这样  TLS1.0 就可以使用了。

#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

2. 把 jdk.tls.disabledAlgorithms 配置项注释掉或者删掉。

#   jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048, \
#       rsa_pkcs1_sha1, secp224r1
#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

猜你喜欢

转载自blog.csdn.net/qq_44625745/article/details/129004105