如何在 Undertow (JDK8) 上禁用 TLS1.1

  • 本文关键字:TLS1 JDK8 Undertow undertow
  • 更新时间 :
  • 英文 :


在我的Java 8项目中,我使用的是Undertow Web服务器(v2.0.25(。这是一个独立的设置,不涉及野蝇。

我想禁用 TLSv1.2 以下的所有 TLS 协议以提高安全性。但是我能找到的所有文档都是针对 WildFly 的,同样,我没有使用。

在 Spring Boot 中,我可以设置server.ssl.enabled-protocols系统属性。

在《野蝇》中,我可以设置

<https-listener name="https" socket-binding="https" security-realm="sslRealm" enabled-protocols="TLSv1.2"/>

令人失望的是,缺乏Undertow文档。

如何设置/限制启用的协议?

通过使用Undertow.builder()你想要的setSocketOption方法如下:

Undertow.builder()//add your build code like https listener, server options, etc
.setSocketOption(Options.SSL_ENABLED_PROTOCOLS, Sequence.of("TLSv1.2","TLSv1.3"))

上述调用将禁用 1.2 以下的所有 TLS 版本,setSocketOptionXNIO 级别工作,XNIO 级别是 undertow 的传输层,OptionsSequence类也来自 XNIO。

请注意,我已经添加了TLS 1.3,这是截至撰写本文时的最新版本,并且所有常青浏览器(但不包括IE(都支持。 请务必使用支持它的提供程序,如果您使用的是JDK SSL提供程序,请确保使用的是Java 11 +.,否则请参阅提供程序的文档,支持TLS1.3的SSL提供程序是Google Conscrypt 在这里找到

相关内容

  • 没有找到相关文章

最新更新