链接sql server 报错
JDK:1.8
sql server :2019
服务器:resin
报错内容:
com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法使用安全套接字层(SSL)加密与 SQL Server 建立安全连接
sql server No appropriate protocol (protocol is disabled or cipher suites areInappropriate)"
问题原因:
java jdk 1.8默认不支持 TLSv1, TLSv1.1需要在配置文件中去掉该参数
文件路径:
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
更改后内容:
jdk.tls.disabledAlgorithms=RC4, DES, MD5withRSA, \
DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
include jdk.disabled.namedCurves
jdk.tls.disabledAlgorithms介绍:
JDK中的jdk.tls.disabledAlgorithms参数用于禁用不安全或不需要的TLS密码算法,
以提高系统的安全性。通过配置这个参数,可以指定JDK不支持的密码算法或协议,以降低它们的优先级,
减少被攻击的风险。
因为JDK 的 TLS 1.0 和 TLS 1.1 实现存在安全漏洞,建议不要使用。