1

Spring Boot アプリケーション (実行可能な戦争) を実行して、SSL を使用するポートと SSL を使用しないポートの 2 つのポートでリッスンする方法はありますか。組み込みの Tomcat 8 を使用しています。

SSL は現在、次を使用して構成されています。

@Bean
@Profile('tls')
EmbeddedServletContainerCustomizer servletContainerCustomizer ()
throws Exception {

    new EmbeddedServletContainerCustomizer () {
        @Override
        public void customize (ConfigurableEmbeddedServletContainer container) {
            TomcatEmbeddedServletContainerFactory tomcat = (TomcatEmbeddedServletContainerFactory) container
            tomcat.addConnectorCustomizers (
                    new TomcatConnectorCustomizer () {
                        @Override
                        public void customize (Connector connector) {
                            connector.setPort     (Integer.parseInt (retrieveRequiredSpringProperty ('ssl.connection.port')))
                            connector.setSecure   (true)
                            connector.setScheme   ('https')
                            connector.setProtocol (retrieveSpringPropertyOrSpecified ('ssl.connection.protocol', 'HTTP/1.1'))

                            Http11NioProtocol proto = (Http11NioProtocol) connector.getProtocolHandler ()
                            proto.setSSLEnabled   (true)
                            proto.setKeystoreFile (retrieveRequiredSpringProperty ('ssl.protocol.keystore.file'))
                            proto.setKeystorePass (retrieveRequiredSpringProperty ('ssl.protocol.keystore.password'))
                            proto.setKeyPass      (retrieveSpringPropertyOrSpecified ('ssl.protocol.keystore.cert.password', null))
                            proto.setKeystoreType ('JKS')
                            proto.setKeyAlias     (retrieveRequiredSpringProperty ('ssl.protocol.keystore.cert.name'))
                            proto.setSslProtocol  ('TLS')
                            proto.setClientAuth   ('false')
                        }
                    }
            )
        }
    }
}

複数TomcatConnectorCustomizerの を使用してみましたが、リストされている最後のものは追加ではなく上書きされているようです。

いつものように、どんな提案も大歓迎です!

4

1 に答える 1