解决连接Sql Server时报错:无法通过使用安全套接字层加密与SQL Server建立安全连接

来自:网络
时间:2024-03-31
阅读:
免费资源网 - https://freexyz.cn/

前言

今天使用jdbc连接sql server突然报错为:SQLServerException: “Encrypt”属性设置为“true”且 “trustServerCertificate”属性设置为“false”,但驱动程序无法使用安全套接字层 (SSL) 加密与 SQL Server 建立安全连接

解决办法一

首先是网上寻找到的第一种办法,就是在自己安装的JDK目录下找到java.security文件,然后打开这个文件。查询jdk.tls.disabledAlgorithms,然后将里面的3DES_EDE_CBC去掉,使用旧的算法。

下面是我的电脑上的例子:

解决连接Sql Server时报错:无法通过使用安全套接字层加密与SQL Server建立安全连接

但是遗憾的是,这个解决办法没有解决我的问题。

解决办法二

在连接数据库时,在我们使用的url后面加上一个encrypt=false或者encrypt=true;trustServerCertificate=true

String dbURL="jdbc:sqlserver://localhost:1433;databaseName=TestDB;encrypt=false";
String dbURL="jdbc:sqlserver://localhost:1433;databaseName=TestDB;encrypt=true;trustServerCertificate=true";

现在也还不了解具体原理,麻烦各位不吝赐教。

总结

  • 修改java.secrity文件
  • 在url后面加上encrypt=false或者encrypt=true;trustServerCertificate=true
免费资源网 - https://freexyz.cn/
返回顶部
顶部