Spring Boot × Jetty で特定の暗号スイートを無効化したい


DHE暗号を使用するによってD(HE)at攻撃ができるらしい

Spring Boot × Jetty のプロジェクトでDHE暗号を除外する方法を調べたんですけど、
これだ!ってものがなかったので、無理やりやってみました。

@Bean
public WebServerFactoryCustomizer<JettyServletWebServerFactory> jettyFactoryCustomizer() {
    return jettyServletWebServerFactory -> jettyServletWebServerFactory.addServerCustomizers(server -> {
        Connector[] connectors = server.getConnectors();
        for (Connector connector : connectors) {
            Collection<ConnectionFactory> factories = connector.getConnectionFactories();
            for (ConnectionFactory factory : factories) {
                if (factory instanceof SslConnectionFactory) {
                    SslConnectionFactory sslConnectionFactory = (SslConnectionFactory) factory;
                    SslContextFactory sslContextFactory = sslConnectionFactory.getSslContextFactory();
                    sslContextFactory.addExcludeCipherSuites("^TLS_DHE_.*$");
                }
            }
        }
        server.setConnectors(connectors);
    });
}

server から必要なオブジェクトを持ってきて、正規表現で除外ルールを追加するだけ。
いい方法かわかりませんが、メモしときます。