当前位置: 首页 > article >正文

RuoYi框架连接SQL Server时解决“SSL协议不支持”和“加密协议错误”

RuoYi框架连接SQL Server时解决“SSL协议不支持”和“加密协议错误”

在使用RuoYi框架进行开发时,与SQL Server数据库建立连接可能会遇到SSL协议相关的问题。以下是两个常见的错误信息及其解决方案。

错误信息1

com.zaxxer.hikari.pool.HikariPool$PoolInitializationException: Failed to initialize pool; 'encrypt' property is set to 'false' and 'trustServerCertificate' property is set to 'true' but we could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption; Error: No appropriate protocol (protocol is disabled or cipher suites are inappropriate).

错误信息2

com.microsoft.sqlserver.jdbc.SQLServerException: The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. ClientConnectionId:3dda3a1b-6554-4c49-b660-20ac85a109d3

这两个错误都表明,数据库连接尝试使用SSL加密,但由于协议不支持或密码套件不匹配而失败。以下是解决此问题的步骤。

解决方案

步骤1:定位JDK目录

找到你的JDK安装目录。通常,它位于/Library/Java/JavaVirtualMachines/下。例如,如果你使用的是JDK 1.8.0_291,路径可能是:

cd /Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home

步骤2:修改安全配置文件

使用文本编辑器(如vim)打开java.security文件:

vim /jdk1.8.0_291.jdk/Contents/Home/jre/lib/security/java.security

找到以下内容:

jdk.tls.disabledAlgorithms=TLSv1.1, RC4, DES, MD5withRSA, \
    DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
    include jdk.disabled.namedCurves

步骤3:禁用不安全的协议

jdk.tls.disabledAlgorithms中删除SSLv3, TLSv1, TLSv1.1三项协议:

jdk.tls.disabledAlgorithms=RC4, DES, MD5withRSA, \
    DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \
    include jdk.disabled.namedCurves

步骤4:重启RuoYi项目

保存文件并退出编辑器。然后,重启你的RuoYi项目,问题应该已经解决。

总结

通过禁用不安全的协议,我们可以确保SQL Server连接使用更安全的协议和密码套件。这种方法简单有效,适用于大多数RuoYi框架下的SQL Server连接问题。希望这篇文章能帮助你快速解决问题,继续你的开发工作。


以上是解决RuoYi框架下连接SQL Server时“SSL协议不支持”和“加密协议错误”问题的具体步骤和方法。如果你有任何疑问或需要进一步的帮助,请随时在评论区留言。


http://www.kler.cn/a/592129.html

相关文章:

  • 关于android开发中,sd卡的读写权限的处理步骤和踩坑
  • 【Linux系统】Linux进程终止的N种方式
  • LeetCode 72 —— 72.编辑距离
  • 生成式AI红队测试:如何有效评估大语言模型
  • Javascript引用数据类型详解
  • 深入解析 `SQL_SMALL_RESULT`:MySQL 的“小优化”大作用
  • Nginx 结合 NFS 共享的服务搭建、DNS 域名解析及安全加固(时间同步、防火墙)实验
  • 设计C语言的单片机接口
  • 【Golang】第五弹----函数
  • 关于解决新版本spring项目请求测试接口返回406的问题
  • 前端面试项目拷打
  • Feture常见实现类(FutureTask、CompletableFuture、ListenableFuture)对比
  • 从零开始构建一个简单的Web爬虫:Python实战教程
  • 基于Gradio实现的增删改查(CRUD)模板系统设计方案
  • 爬虫逆向:详细讲述iOS底层原理及机制
  • 智慧环保系统(源码+文档+讲解+演示)
  • 【Camera2 教程六】Camera2算法集成
  • Channel-wise Knowledge Distillation for Dense Prediction论文阅读和
  • 【GPT入门】第20课 langchain的function calling 初步体验
  • 4.3--入门知识扫盲,IPv4的头部报文解析,数据报分片,地址分类(包你看一遍全部记住)