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

news/2025/2/24 10:30:21

SQL Server

文章目录
      • 一. 前言
      • 二. 解决方案
        • 方案1
        • 方案2
      • 三. 总结
一. 前言

在《数据库原理》这门课的实验上,需要使用SQL Server,然后使用jdbc连接sql server突然报错为:SQLServerException: “Encrypt”属性设置为“true”且 “trustServerCertificate”属性设置为“false”,但驱动程序无法使用安全套接字层 (SSL) 加密与 SQL Server 建立安全连接,整理出来以下两种解决方案。

二. 解决方案

一共两种解决方案,如下所示:

方案1

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

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

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

方案2
  1. 连接数据库时,如果我们需要对在客户端与服务器之间发送的所有数据使用 TLS 加密,那么就需要设置encrypt=true,同时设置trustServerCertificate=trueMicrosoft JDBC Driver for SQL Server 将不验证SQL Server TLS 证书。 此设置常用于允许在测试环境中建立连接,如 SQL Server 实例只有自签名证书的情况。

  2. 连接数据库时,如果我们不想对在客户端与服务器之间发送的所有数据使用 TLS 加密,那么就需要设置encrypt=false.

操作方法如下:

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

OR

String dbURL="jdbc:sqlserver://localhost:1433;databaseName=TestDB;encrypt=true;trustServerCertificate=true";
三. 总结
  1. 修改java.secrity文件
  2. 在url后面加上encrypt=false或者encrypt=true;trustServerCertificate=true(推荐)

如果你在阅读本文中发现描述不够准确或有误的地方,还请给予我一定的反馈,大家一起学习进步!!!


http://www.niftyadmin.cn/n/5864217.html

相关文章

一个基本的pyside6项目模板demo

一个属于自己的空白的pyside6项目模板demo,可以用作项目的起步框架。 主目录结构 各个目录和文件的说明: DataBase:数据库相关文件 Job:作业函数,是用来实现具体功能的函数,比如用于文字识别,或…

Rust语言基础知识详解【一】

1.在windows上安装Rust Windows 上安装 Rust 需要有 C 环境,以下为安装的两种方式: 1. x86_64-pc-windows-msvc(官方推荐) 先安装 Microsoft C Build Tools,勾选安装 C 环境即可。安装时可自行修改缓存路径与安装路…

HTML之JavaScript DOM编程获取元素的方式

HTML之JavaScript DOM编程获取元素的方式 1.获得document DOM树window.document(是window的属性)2.从document中获取要操作的元素1.直接获取var aaa document.getElementById("username") // 根据元素的id值获取页面上的唯一一个元素,有同名的则返回找到的第一个var…

deepseek_清华大学指导手册_pdf_1-5

deepseek_清华大学指导手册_pdf_1-5 无套路,无需关注,无需登录,无需app,直接下载: 下载地址 文件列表: 001_清华大学_DeepSeek从入门到精通.pdf 002_清华大学_DeepSeek如何赋能职场应用.pdf 003_清华大学…

TCP三次握手 四次挥手:一场“确认眼神”与“礼貌告别”的对话

🌟 TCP三次握手 & 四次挥手:一场“确认眼神”与“礼貌告别”的对话 🌟 一、三次握手:建立连接的“确认眼神” 场景:想象你和朋友打电话,如何确认对方能听到你说话? 过程: 1️…

深度学习入门:从零开始理解神经网络

欢迎来到深度学习的世界!如果你是初学者,可能会对这个领域感到既兴奋又有些迷茫。别担心,我会带你一步步走进这个充满魅力的领域。深度学习是人工智能领域的一个重要分支,它通过模拟人脑的神经网络结构来处理数据。深度学习的核心…

安全面试4

文章目录 给的源码是ThinkPHP框架的话,审计起来和没有使用框架的有什么不同,从流程上或者从关注的点上有什么不同框架代码审计的流程无框架代码审计的流程 反序列的时候,unserialize()反序列一个字符串的时候,对象会有一些魔术方法…

SpringBoot+Vue+微信小程序的猫咖小程序平台(程序+论文+讲解+安装+调试+售后)

感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,我会一一回复,希望帮助更多的人。 系统介绍 在当下这个高速发展的时代,网络科技正以令人惊叹的速度不断迭代更新。从 5G …