java 中通过JDBC连接多实例安全问题
问题:若依框架,连接Sqlserver 多实例
jdbc:sqlserver://127.0.0.1;instanceName=DABA;DatabaseName=LBE
报错:驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。SQL Server 未返回响应。连接已关闭。
解决方法:
找到对应客户端的jre目录下的java.security文件
不同jre版本目录不一样
比如我的jre11的配置目录如下
.../jre/conf/security
jre8配置目录如下
C:\Program Files\Java\jre1.8.0_181\lib\security
备份一份java.security文件为java.security.bak
打开文件找到类似配置
# Example:
# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048
jdk.tls.disabledAlgorithms=SSLv3, RC4, MD5withRSA, DH keySize < 1024, \
EC keySize < 224, DES40_CBC, RC4_40, 3DES_EDE_CBC
# Legacy algorithms for Secure Socket Layer/Transport Layer Security (SSL/TLS)
# processing in JSSE implementation.
删除其中3DES_EDE_CBC,结果类似如下
# Example:
# jdk.tls.disabledAlgorithms=MD5, SSLv3, DSA, RSA keySize < 2048
jdk.tls.disabledAlgorithms=SSLv3, RC4, MD5withRSA, DH keySize < 1024, \
EC keySize < 224, DES40_CBC, RC4_40
# Legacy algorithms for Secure Socket Layer/Transport Layer Security (SSL/TLS)
# processing in JSSE implementation.
重启客户端后可以连接上SQLServer

浙公网安备 33010602011771号