微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQL Server Jdbc驱动程序无法使用TLS1.2连接到数据库

如何解决SQL Server Jdbc驱动程序无法使用TLS1.2连接到数据库

我想从Linux实例使用TLS1.2连接到我的数据库实例,但无法这样做。 我正在使用以下配置

  1. Java JDK:Amazon corretto openjdk版本:“ 1.8.0_252”
  2. JDBC驱动程序:Microsoft sql服务器mssql-jdbc:8.2.2.jre8
  3. 连接字符串:jdbc:sqlserver:// [我的数据库URL]:1433; SSLProtocol = TLSv1.2
  4. 操作系统:Amazon Linux
  5. 数据库:Windows计算机上运行的Microsoft sql Server 16
  6. 我已关闭数据库上的TLS1和TLS1.0,以强制我的Java应用程序仅使用TLS1.2

当我的应用程序尝试连接到数据库时,出现以下错误

com.microsoft.sqlserver.jdbc.sqlServerException:驱动程序无法通过使用安全套接字层(SSL)加密建立到sql Server的安全连接错误:没有适当的协议(协议已禁用或密码套件不合适)。

解决方法

这可能不是最好的解决方案,但为了让我的应用程序正常工作,我使用了,

java.security.Security.setProperty("jdk.tls.disabledAlgorithms","SSLv3,RC4,DES,MD5withRSA,DH keySize

我从 Java 8.0.202 升级到 8.0.291 并遇到了您提到的禁用 TLS 1.0 和 1.1 的问题。我在上面设置的属性是 Java 8.0.202 的设置

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。