Commit Graph

4064 Commits (8e18862582220fc7ab2ebac2acfb377bf6fb68b9)

Author SHA1 Message Date
Scott Frederick 8e1f24f98f Add SSL bundle auto-configuration support
Add auto-configuration for SSL bundles including new configuration
properties that can be used to define a bundle.

SSL bundle properties are provided under the `spring.ssl.bundle` key.
Currently `jks` and `pem` variants are support. Both are configured
as a `Map` where the bundle name is the key.

A typical example would be:

    spring:
      ssl:
        bundle:
          pem:
            mybundle
              key:
                password: secret
              keystore:
                certificate: classpath:mycert.pem
                private-key: classpath:mykey.pem

A `SslBundleRegistrar` interface is also provided to allow programmatic
contributions to the auto-configured `SslBundleRegistry`.

See gh-34814
2 years ago
Andy Wilkinson cbc03783d0 Allow startup to contiune when ConnectionDetailsFactory load fails
Prior to this commit, a failure to load a ConnectionDetailsFactory
caused startup to fail. This causes problems when some of a
factory's required classes were not available, for examle when using
spring-boot-docker-compose without Actuator.

Fixes gh-35100
2 years ago
Andy Wilkinson a03fe8befc Enable customization of JWK Set URI decoder builders
Closes gh-20750
2 years ago
Stephane Nicoll 366f7a85c9 Merge branch '3.0.x'
Closes gh-35069
2 years ago
Stephane Nicoll 6933796f2a Merge branch '2.7.x' into 3.0.x
Closes gh-35068
2 years ago
Stephane Nicoll 1b832d82f8 Polish "Back off if a custom ApplicationAvailability bean is present"
See gh-34347
2 years ago
Taeik Lim 5e95ba8448 Back off if a custom ApplicationAvailability bean is present
See gh-34347
2 years ago
Andy Wilkinson f5e654748c Polish "Add customizer for conversion service used by Spring Batch"
See gh-34769
2 years ago
Claudio Nave cafa6f5d9c Add customizer for conversion service used by Spring Batch
See gh-34769
2 years ago
Stephane Nicoll a323bd90a8 Polish "Reintroduce support for ActiveMQ"
See gh-35048
2 years ago
Martin BENDA 3e9908a797 Reintroduce support for ActiveMQ
See gh-35048
2 years ago
Andy Wilkinson 7b3e687f05 Deprecate OAuth2ClientPropertiesRegistrationAdapter
This commit deprecates OAuth2ClientPropertiesRegistrationAdapter as
it wasn't really an adapter because it provides a static utility
method rather than adapting one contract to another. A replacement,
OAuth2ClientPropertiesMapper, is introduced that maps the OAuth2
client properties to the required types.

Closes gh-34714
2 years ago
Andy Wilkinson 4eb7558707 Polish "Add properties to support device grant"
See gh-34957
2 years ago
Steve Riesenberg 25b582c822 Add properties to support device grant
This commit adds the following properties under
spring.security.oauth2.authorizationserver.client.[registration-id]:

* endpoint.device-authorization-uri
* endpoint.device-verification-uri
* token.device-code-time-to-live

See gh-34957
2 years ago
Andy Wilkinson e2ee1ed50d Fix password handling in Flyway auto-configuration
Previously, FlywayProperties returned an empty string when its
password had not been set. This prevented the desired fallback to
JdbcConnectionDetails.

Fixes gh-35046
2 years ago
Phillip Webb 81a972af8d Refactor testcontainers service connections
Update restcontainers service connections support so that
technology specific `@ServiceConnector` annotations are not longer
required.

A single `@ServiceConnector` annotation can now be used to create
all `ConnectionDetail` beans.

Closes gh-35017
2 years ago
Phillip Webb 2951cc7594 Polish 2 years ago
Phillip Webb 1849b82334 Don't apply configuration-properties from auto-configuration plugin
Update the auto-configuration gradle plugin so that the
configuration-properties plugin is not longer automatically applied.
This  allows us to have auto-configuration modules that don't ship
configuration properties.

Closes gh-35028
2 years ago
Phillip Webb 053c968fb4 Polish 2 years ago
Phillip Webb 00dc942e94 Migrate to Spring Security lambda config
Closes gh-35011
2 years ago
Andy Wilkinson 397f16ce2d Upgrade to Flyway 9.16.3
Closes gh-34990
2 years ago
Stephane Nicoll c4c4eb93ae Start building against Spring Security 6.1.0-RC1 snapshots
See gh-34969
2 years ago
Andy Wilkinson d4980ea993 Always define connection details beans
Closes gh-34776
2 years ago
Andy Wilkinson 466b81f13d Merge branch '3.0.x' 2 years ago
Andy Wilkinson 0e51cd583a Merge branch '2.7.x' into 3.0.x 2 years ago
Andy Wilkinson e70226b48e Adapt to breaking changes in Spring Security internals
See gh-34948
2 years ago
Phillip Webb e9a198a68f Merge branch '3.0.x' 2 years ago
Stephane Nicoll 9a4a522004 Polish "Start building against Spring Security 6.0.3 snapshots"
See gh-34952
2 years ago
Stephane Nicoll 3f022867f4 Polish "Start building against Spring Security 5.7.8 snapshots"
See gh-34948
2 years ago
Stephane Nicoll 2dcb849c0f Merge branch '3.0.x'
Closes gh-34939
2 years ago
Stephane Nicoll 320db790e7 Merge branch '2.7.x' into 3.0.x
Closes gh-34938
2 years ago
Stephane Nicoll 4b8829364e Polish "Use removeIf rather than Iterator-based removal"
See gh-34762
2 years ago
SeasonPan 0d13e31827 Use removeIf rather than Iterator-based removal
See gh-34762
2 years ago
Stephane Nicoll 029e47c647 Merge branch '3.0.x'
Closes gh-34937
2 years ago
Stephane Nicoll 55125c7a5c Update copyright header of changed file
See gh-34844
2 years ago
Sanghyuk Jung d4fe272ce5 Remove outdated reference to JPA in BatchProperties
See gh-34844
2 years ago
Stephane Nicoll ab1e0f51c6 Merge branch '3.0.x'
Closes gh-34936
2 years ago
Stephane Nicoll 03d42deaea Polish "Fix hint to include all Liquibase resources in default location"
See gh-34729
2 years ago
Andrii Bohutskyi 408d5246bc Fix hint to include all Liquibase resources in default location
See gh-34729
2 years ago
Johnny Lim 7dbc7e7e39 Remove unused test configuration
See gh-34818
2 years ago
Stephane Nicoll 47baad1e44 Upgrade to Neo4j Java Driver 5.7.0
Closes gh-34934
2 years ago
Stephane Nicoll bd0561fc10 Upgrade to Neo4j Java Driver 5.7.0
Closes gh-34930
2 years ago
Phillip Webb 463701db18 Merge branch '3.0.x' 2 years ago
Phillip Webb d442bfbeff Polish 2 years ago
Stephane Nicoll d823d7b0b1 Upgrade to Undertow 2.2.24.Final
Closes gh-34910
2 years ago
Andy Wilkinson 16b126a481 Merge branch '2.7.x' into 3.0.x
Closes gh-34799
2 years ago
Andy Wilkinson c9e69b13b1 Resolve placeholders in reference config against all other config
Fixes gh-34643
2 years ago
Andy Wilkinson bb0ec34e7b Resolve placeholders in reference config against all other config
Fixes gh-34643
2 years ago
Andy Wilkinson d69335d94a Use driver class name from JdbcConnectionDetails
Fixes gh-34777
2 years ago
Andy Wilkinson b91f814e42 Fix incomplete assertions
See gh-34503
2 years ago
Andy Wilkinson 8ec266bea4 Add infrastructure for pluggable connection details factories
See gh-34658

Co-Authored-By: Phillip Webb <pwebb@vmware.com>
Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
2 years ago
Andy Wilkinson ac55caa463 Add ConnectionDetail support to Redis auto-configuration
Update Redis auto-configuration so that `RedisConnectionDetails`
beans may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 69f31cb6c0 Add ConnectionDetail support to Rabbit auto-configuration
Update Rabbit auto-configuration so that `RabbitConnectionDetails`
beans may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson de8fb04814 Add ConnectionDetail support to Neo4J auto-configuration
Update Neo4J auto-configuration so that `Neo4jConnectionDetails`
beans may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 2ef33dc81f Add ConnectionDetail support to Mongo auto-configuration
Update Mongo auto-configuration so that `MongoConnectionDetails`
beans may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 042f0c8520 Add ConnectionDetail support to Kafka auto-configuration
Update Kafka auto-configuration so that `KafkaConnectionDetails`
beans may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson d860d875b9 Add ConnectionDetail support to Influx auto-configuration
Update Influx auto-configuration so that `InfluxDbConnectionDetails`
beans may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 4cc7958c0b Add ConnectionDetail support to Elasticsearch auto-configuration
Update Elasticsearch auto-configuration so that
`ElasticsearchConnectionDetails` beans may be optionally used to
provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 9f187bb13a Add ConnectionDetail support to Couchbase auto-configuration
Update Couchbase auto-configuration so that
`CouchbaseConnectionDetails` beans may be optionally used to provide
connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 4307fdc0a0 Add ConnectionDetail support to Cassandra auto-configuration
Update Cassandra auto-configuration so that `CassandraConnectionDetails`
beans may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 61e9fe8cd4 Add ConnectionDetail support to R2DBC auto-configuration
Update R2DBC auto-configuration so that `R2dbcConnectionDetails` beans
may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson d09ac00824 Add ConnectionDetail support to JDBC auto-configuration
Update JDBC auto-configuration so that `JdbcConnectionDetails` beans
may be optionally used to provide connection details.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson aa91f2b8b6 Introduce ConnectionDetails interface
Add a `ConnectionDetails` tagging interface which will be used
to mark beans that are a source of configuration settings for
connection to a remove service. When such beans are available,
they will take precedence over any connection-related
configuration properties. Configuration properties that are not
related to the connection itself, such as properties that control
the size and behavior of a connection pool, will still used.

See gh-34657

Co-Authored-By: Mortitz Halbritter <mkammerer@vmware.com>
Co-Authored-By: Phillip Webb <pwebb@vmware.com>
2 years ago
Andy Wilkinson 1eb5bbe3ea Polish "Allow ProblemDetailsExceptionHandlers to be proxied"
See gh-34503
2 years ago
Volkan Yazıcı b96a8dd370 Allow ProblemDetailsExceptionHandlers to be proxied
See gh-34503
2 years ago
Andy Wilkinson 6d5e76e14e Polish "Configure support for GraphQL pagination and sorting"
See gh-34677
2 years ago
Brian Clozel 7109542e3f Configure support for GraphQL pagination and sorting
This commit auto-configures the new pagination and sorting support for
Spring for GraphQL, if Spring Data is available.
The `GraphQlAutoConfiguration` now contributes a `CursorStrategy` bean
that is used to set up the pagination and sorting data fetching
infrastructure.

This commit also configures by default a
`ConnectionTypeDefinitionConfigurer` that automatically detects
`*Connection` types and contributes the relevant schema definitions
according to the Relay spec.

See gh-34677
2 years ago
Andy Wilkinson 919c8aa218 Merge branch '3.0.x'
Closes gh-34731
2 years ago
Andy Wilkinson fa63f6cc9e Stop using an instance supplier in EntityScanPackages' bean definition
Closes gh-34371
2 years ago
Andy Wilkinson f06536f642 Polish Authorization Server auto-configuration 2 years ago
Madhura Bhave e6f602cec0 Polish "Add Spring Authorization Server support"
See gh-34003
2 years ago
Steve Riesenberg 25d77ee70b Add Spring Authorization Server support
See gh-34003
2 years ago
Scott Frederick cf5b654f96 Polish "Switch to single topic for same intervals in Spring Kafka retry config"
See gh-34504
2 years ago
Abhijeet Mishra 4abf6f95ae Switch to single topic for same intervals in Spring Kafka retry config
See gh-34504
2 years ago
Andy Wilkinson f6add35f8b Upgrade to Tomcat 10.1.7
Closes gh-34674
2 years ago
Scott Frederick 3d65be0e1c Merge branch '3.0.x'
Closes gh-34660
2 years ago
Scott Frederick 86a1cfff6f Merge branch '2.7.x' into 3.0.x
Closes gh-34659
2 years ago
Scott Frederick 6dc0f90e00 Polish "Disable embedded web auto-config when not using embedded web server"
See gh-34332
2 years ago
Guirong Hu b2facecb12 Disable embedded web auto-config when not using embedded web server
See gh-34332
2 years ago
Andy Wilkinson 4be288f672 Upgrade to Tomcat 9.0.73
Closes gh-34655
2 years ago
Andy Wilkinson 59921d823c Merge branch '3.0.x'
Closes gh-34606
2 years ago
Andy Wilkinson d9c5f274c8 Merge branch '2.7.x' into 3.0.x
Closes gh-34605
2 years ago
1993heqiang a3bb3b1510 Polish name of JettyServletWebServerFactory bean method
See gh-34421
2 years ago
Andy Wilkinson ef6c9853e9 Merge branch '3.0.x'
Closes gh-34604
2 years ago
Andy Wilkinson 03865eebd7 Polish "Fix Javadoc in JobLauncherApplicationRunner"
See gh-34596
2 years ago
Sanghyuk Jung 03acc0273e Fix Javadoc in JobLauncherApplicationRunner
See gh-34596
2 years ago
Andy Wilkinson eda299df90 Configure exception resolver for `@GraphQlExceptionHandler` methods
To apply `@ControllerAdvice` exception handling to non-controller
DataFetcher implementations like QueryDslDataFetcher,
QueryByExampleDataFetcher, and others, this commit exposes the
DataFetcherExceptionResolver from AnnotatedControllerConfigurer as a
bean. The existing auto-configured for DataFetcherExceptionResolver
then picks this up and passes it into the builder used to create the
GraphQlSource.

Closes gh-34526
2 years ago
Andy Wilkinson daba3ce52b Upgrade to Tomcat 10.1.7
Closes gh-34582
2 years ago
Andy Wilkinson 1e5169846f Fix handling of deprecated identityprovider verification.credentials
Fixes gh-34525
2 years ago
Scott Frederick 8c3bf88aba Merge branch '3.0.x' 2 years ago
Scott Frederick f28bb221a2 Suppress Spring Kafka deprecation warning
See gh-34441
2 years ago
Moritz Halbritter 2becf70c2a Polish "Add RabbitTemplateCustomizer"
See gh-34050
2 years ago
dzcr 5f77c1cd77 Add RabbitTemplateCustomizer
See gh-34050
2 years ago
Phillip Webb b20b5edf2a Polish 2 years ago
Andy Wilkinson 6885c3432e Upgrade to Spring Kafka 3.0.3
Closes gh-34354
2 years ago
Andy Wilkinson 525cba1b6f Upgrade to Neo4j Java Driver 5.4.0
Closes gh-34344
2 years ago
Phillip Webb 157091a811 Merge branch '3.0.x' 2 years ago
Phillip Webb 0b15962aca Merge branch '2.7.x' into 3.0.x 2 years ago
Andy Wilkinson f6e208c647 Merge branch '3.0.x'
See gh-34235
2 years ago
Andy Wilkinson 88de3cc089 Temporarily remove auto-config for Reactor context propagation
See gh-34201
2 years ago