● 在Java中关闭TLS安全检查有几种方法:
方法1:JVM启动参数(推荐)
启动DBAPI时添加以下参数:
java -Dcom.microsoft.sqlserver.jdbc.fips=false
-Djdk.tls.disabledAlgorithms=
-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2
-Dtrust_all_cert=true
-jar dbapi-standalone.jar
方法2:修改java.security文件
找到Java安装目录下的 $JAVA_HOME/lib/security/java.security 文件:
注释掉或修改这行
#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=
方法3:Windows批处理启动
创建 start-dbapi.bat 文件:
@echo off
set JAVA_OPTS=-Dcom.microsoft.sqlserver.jdbc.fips=false ^
-Djdk.tls.disabledAlgorithms= ^
-Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 ^
-Djdk.tls.client.protocols=TLSv1,TLSv1.1,TLSv1.2,TLSv1.3 ^
-Dtrust_all_cert=true
java %JAVA_OPTS% -jar dbapi-standalone.jar
pause
方法4:环境变量
设置系统环境变量:
JAVA_TOOL_OPTIONS=-Djdk.tls.disabledAlgorithms= -Dhttps.protocols=TLSv1,TLSv1.1,TLSv1.2
最简单的方法
直接在命令行运行:
java -Djdk.tls.disabledAlgorithms= -jar dbapi-standalone.jar
这样就关闭了Java的TLS安全限制,应该能够连接到您的SQL Server了。
注意:这些设置会降低安全性,建议只在内网环境使用。