使用外部 tomcat 在 spring 引导应用程序中定义信任库和密钥库信息

Defining trust-store and key-store information in spring boot application with external tomcat

我已经在连接器标记的外部 tomcat 的 server.xml 中配置了我的 trustsore 和密钥库信息。证书存储在 tomcat 的 /base/lib 目录中。 我需要将 spring 引导应用程序部署到此外部 tomcat.

  1. 如何使 spring 启动应用程序可以使用有关 trustsore 和密钥库的信息?
  2. 我需要在 spring 启动应用程序的什么位置存储 trsustore 和 keystore .jks 文件?

我对 server.xml 中 Resource 标签中的数据源做了同样的操作,在 spring 我使用的启动应用程序中 spring.datasource.jndi-name=jndi 的某个名称。如何为 trsustore 和 keystore 配置相同的内容?

Tomcat 的 <Connector> 中的密钥库和信任库只有一个用途:

  • 密钥库包含服务器的 SSL 端口使用的证书(和私钥),
  • 信任库包含 CA 列表,如果启用 mutual SSL authentication,则这些 CA 是可信的。

因此,这些设置特定于您的应用程序的每个部署。你不应该自己提供它们。

您应该只为系统管理员提供配置这些设置的方法。在你的情况下 Spring Boot 已经处理好了(参见 server.ssl properties)。

另请参阅: