我想用 spring boot(版本 1.3.3)停用 TLS 1.0,但如果 application.yml 如下所示,它不起作用:
ssl:
protocol: TLSv1.2
key-store: /E:/key/server.jks
key-store-password: serverpkcs12
如果只在 IE 中选择“USE TLS 1.0”,我仍然可以访问网页。看这张照片——不行。
但是,如果不使用嵌入式 tomcat,并为位于 server.xml 中的 Connector 添加这些参数,那么它对我来说效果很好 - 网页被 IE 阻止。看这张照片——对我有用
sslProtocols="TLSv1.2" sslEnabledProtocols="TLSv1.2"
我还尝试了一些虚拟机参数,例如-Dhttps.protocols =“TLSv1.2”,全都是没用的。
那么我能为此做些什么呢?
最透明和可读的方法是在应用程序配置文件中显式配置有效的 TLS 协议,当然,排除不需要的协议。
例如在 YAML 中
server.ssl.enabled-protocols=TLSv1.1,TLSv1.2
然后,您可以启动服务器并通过执行以下命令检查 TLS 1.0 是否正常工作
openssl s_client -connect localhost:443 -tls1
上述连接应被拒绝,而以下两个连接将被接受并打印证书的详细信息
openssl s_client -connect localhost:443 -tls1_1
openssl s_client -connect localhost:443 -tls1_2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)