问题描述
spring启动1.2.1中默认启用TLS 1.2。可以通过从命令行运行以下命令来验证
openssl s_client -connect serverAddress:port
哪个输出
SSL-Session:
Protocol : TLSv1.2
Cipher : ECDHE-RSA-AES256-SHA384
所以我的问题必须是另外的东西。
解决方法
我试图在Spring-boot 1.2.1上的Tomcat上启用TLS 1.2。由于SSL握手失败,Android
5.0无法连接到默认SSL设置。Android 4.4,iOS,Firefox和Chrome均连接到默认版本。我认为这是由于Android
5.0支持的TLS协议不匹配以及Spring Boot Tomcat默认设置(TLS v1?)。
我想我想更改此application.properties设置:
server.ssl.protocol=TLS
但我还没有找到其他可接受的字符串(或者是否存在任何偶数)。我无法通过在spring boot
github中搜索“
protocol”找到任何枚举。我已经尝试过“ TLSv1.2”,但这似乎无效。
application.properties中的当前SSL配置为:
server.ssl.key-store = chainedcertificates.p12
server.ssl.key-store-password = secret
server.ssl.key-store-type = PKCS12
如何在Spring Boot中启用TLS 1.2?
如果有关系,我正在使用Java 1.7。有关此文档的文档似乎表明它应支持TLS 1.2。
Tomcat
8似乎有支持。我不确定如何在Spring
Boot中准确检查哪个版本正在运行。