我有一个使用TomcatServletWebServerFactory以编程方式在SSL上运行的spring boot应用程序,我们从配置文件中设置以下内容:
proto.setSSLCertificateKeyFile(classLoader.getResource(certificateKeyFile).getPath());
proto.setSSLCertificateFile(classLoader.getResource(certificateFile).getPath());
proto.setSSLCertificateChainFile(classLoader.getResource(certificateChainFile).getPath());
但是,我也想在执行器端点上启用SSL。我在网上发现,我们使用application.properties中的以下内容来执行此操作:
management.server.ssl.enabled=true
management.server.ssl.key-store=
management.server.ssl.key-password=
在我的情况下这不起作用,因为我需要重用上述证书。如果我以编程方式向TomcatServletWebServerFactory添加了一个附加连接器,则它会在已绑定端口时抛出错误,就像执行器具有不同的tomcat连接器一样。在提供上述证书文件的同时,如何在执行器上以编程方式启用SSL?
答案 0 :(得分:0)
我最终删除了我的编程配置,并使用了以下内容:
security.require-ssl=true
server.ssl.key-store-type=PKCS12
server.ssl.key-store=classpath:name.pfx
server.ssl.key-store-password=password
不使用执行器的SSL:management.server.ssl.xxx配置