Skip to content

Provide centralized configuration of SSL properties #34814

@scottfrederick

Description

@scottfrederick

There are several auto-configurations in Spring Boot that support SSL configuration using properties, including server.ssl, management.server.ssl, spring.rsocket.server.ssl, and some data services connections as mentioned in #17589. We'd like to make the SSL properties used throughout the system more consistent and easier to understand, and also provide a way to configure SSL properties once and re-use them on multiple connections.

Configuring named sets of SSL configuration could be done with a properties structure similar to this:

spring:
  ssl:
    bundle:
      pem:
        corp-ca:
          keystore:
            certificate:
            private-key:
            type:
          truststore:
            certificate:
            private-key:
            type:
          key:
            alias:
            password:
        other-ca:
          keystore:
            certificate:
            private-key:
      jks:
        my-jks:
          keystore:
            location:
            password:
            type:
          truststore:
            location:
            password:
            type:
          key:
            alias:
            password:

These named sets of configuration could then be applied similar to this:

server.ssl:
  bundle: corp-ca
management.server.ssl:
  bundle: corp-ca
spring.rsocket.ssl:
  bundle: my-jks

and to other connections that don't currently support SSL configuration.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions