admin 管理员组文章数量: 1086866
The server selected protocol version TLS10 is not accepted by client preference[TLS12] 连接sqlserver报错
异常描述
jdk版本:8
sqlserver版本:2014
异常:
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: 驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client preferences [TLS12]”。 ClientConnectionId:bdca880a-bbf9-4ef3-90ab-60e6681045a5at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:2998) ~[mssql-jdbc-8.2.1.jre8.jar:na]at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1884) ~[mssql-jdbc-8.2.1.jre8.jar:na]at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:2558) ~[mssql-jdbc-8.2.1.jre8.jar:na]at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:2216) ~[mssql-jdbc-8.2.1.jre8.jar:na]at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:2067) ~[mssql-jdbc-8.2.1.jre8.jar:na]at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:1204) ~[mssql-jdbc-8.2.1.jre8.jar:na]at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:825) ~[mssql-jdbc-8.2.1.jre8.jar:na]at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:156) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:227) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:150) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1659) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1723) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:919) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1393) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:1389) ~[druid-1.2.6.jar:1.2.6]at com.alibaba.druid.pool.DruidDataSource.getConnection(DruidDataSource.java:100) ~[druid-1.2.6.jar:1.2.6]at org.springframework.jdbc.datasource.DataSourceUtils.fetchConnection(DataSourceUtils.java:158) ~[spring-jdbc-5.2.12.RELEASE.jar:5.2.12.RELEASE]at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:116) ~[spring-jdbc-5.2.12.RELEASE.jar:5.2.12.RELEASE]at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:79) ~[spring-jdbc-5.2.12.RELEASE.jar:5.2.12.RELEASE]... 61 common frames omitted
Caused by: javax.ssl.SSLHandshakeException: The server selected protocol version TLS10 is not accepted by client preferences [TLS12]at sun.security.ssl.Alert.createSSLException(Alert.java:131) ~[na:1.8.0_291]at sun.security.ssl.Alert.createSSLException(Alert.java:117) ~[na:1.8.0_291]at sun.security.ssl.TransportContext.fatal(TransportContext.java:357) ~[na:1.8.0_291]at sun.security.ssl.TransportContext.fatal(TransportContext.java:313) ~[na:1.8.0_291]at sun.security.ssl.TransportContext.fatal(TransportContext.java:304) ~[na:1.8.0_291]at sun.security.ssl.ServerHello$ServerHelloConsumer.onServerHello(ServerHello.java:946) ~[na:1.8.0_291]at sun.security.ssl.ServerHello$ServerHelloConsumer.consume(ServerHello.java:873) ~[na:1.8.0_291]at sun.security.ssl.SSLHandshake.consume(SSLHandshake.java:376) ~[na:1.8.0_291]at sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:479) ~[na:1.8.0_291]at sun.security.ssl.HandshakeContext.dispatch(HandshakeContext.java:457) ~[na:1.8.0_291]at sun.security.ssl.TransportContext.dispatch(TransportContext.java:200) ~[na:1.8.0_291]at sun.security.ssl.SSLTransport.decode(SSLTransport.java:154) ~[na:1.8.0_291]at sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1290) ~[na:1.8.0_291]at sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1199) ~[na:1.8.0_291]at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:401) ~[na:1.8.0_291]at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:373) ~[na:1.8.0_291]at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:1802) ~[mssql-jdbc-8.2.1.jre8.jar:na]... 78 common frames omitted
异常解决
jdk1.8.0_291\jre\lib\security文件夹下(环境变量设置的jre)
java.security文件
jdk.tls.disabledAlgorithms 配置项
将 3DES_EDE_CBC,TLSv1, TLSv1.1, 删除即可。
修改前:
jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA,TLSv1, TLSv1.1, \DH keySize < 1024, EC keySize < 224, 3DES_EDE_CBC, anon, NULL, \include jdk.disabled.namedCurves
修改后:
# 3DES_EDE_CBC,TLSv1, TLSv1.1,被删除
jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, \DH keySize < 1024, EC keySize < 224, anon, NULL, \include jdk.disabled.namedCurves
不用重启,重新连接
本文标签: The server selected protocol version TLS10 is not accepted by client preferenceTLS12 连接sqlserver报错
版权声明:本文标题:The server selected protocol version TLS10 is not accepted by client preference[TLS12] 连接sqlserver报错 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1699474187a359607.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论