use*_*742 3 java sql-server jtds azure azure-sql-managed-instance
我们的 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 版本的错误消息具有误导性。希望这对将来的人有帮助。
尝试将 .Net 应用程序连接到 Azure 托管实例中的 Azure SQL 数据库时遇到同样的问题。
我是这样解决的。
我以前的 JDBC URL 是这样的:
jdbc:jtds:sqlserver://my-example-instance.c656df8582985.database.windows.net:1433
Run Code Online (Sandbox Code Playgroud)
我只是添加ssl=require到 URL 的末尾,所以它变成了:
jdbc:jtds:sqlserver://my-example-instance.c656df8582985.database.windows.net:1433;ssl=require
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6544 次 |
| 最近记录: |