问题描述
我们的 Java 应用程序使用 jtds 1.3.1 连接到 sql Server,它可以正常工作,直到客户端尝试将数据库放在 Azure sql 上。连接失败,出现以下异常:
java.sql.sqlException:原因:登录失败,因为客户端 TLS 版本低于服务器允许的最低 TLS 版本。
我查看了 jtds 的文档,无论如何都看不到指定 TLS 版本。除了用 MS JDBC 驱动程序替换它之外,有没有人成功地解决了其他问题?
我无法访问 Azure sql,因此无法测试将 TLS 版本降低到 1.0 是否可行。
谢谢。
解决方法
偶然解决了这个问题。只需将“;ssl=request”附加到连接字符串。看起来默认情况下 SSL/TLS 是禁用的。有关 TLS 版本的错误消息具有误导性。希望这对未来的人有所帮助。