Commit Graph
42 Commits
Author SHA1 Message Date
Stéphane Nicoll 98084aab2b Reformat additional-spring-configuration-metadata.json files 2026-05-30 14:28:53 +02:00
Andy Wilkinson add52b6ccd Merge branch '3.5.x' into 4.0.x
Closes gh-50439
2026-05-14 15:02:24 +01:00
Andy Wilkinson fc67e24820 Merge branch '3.5.x' into 4.0.x
Closes gh-50260
2026-04-30 13:44:06 +01:00
Andy Wilkinson 874f6294b9 Fix default security with actuator but without health
Closes gh-50188
2026-04-23 08:57:18 +01:00
Andy Wilkinson a96de880e0 Merge branch '3.5.x' into 4.0.x
Closes gh-50085
2026-04-16 09:07:18 +01:00
Andy Wilkinson 64969bfea8 Ensure that mock infra is defined before Security auto-config
We need to ensure that MockMvcAutoConfiguration has defined its
DispatcherServletPath bean before the condition that checks for it in
ServletWebSecurityAutoConfiguration is evaluated.

Ideally, ServletWebSecurityAutoConfiguration in spring-boot-security
would not know about test-specific code but there's no easy way to
establish the required ordering without this link. One alternative
option is an auto-configuration class in spring-boot-security-test
that's purely for ordering purposes. This was rejected as it would
introduce new public API (as we enforce that all auto-configurations
are public).

Fixes gh-49854
2026-04-09 08:42:36 +01:00
Brian Clozel 5c506b148f Merge branch '3.5.x' into 4.0.x
Closes gh-49943
2026-04-07 17:05:52 +02:00
Brian Clozel 3aad18a774 Merge branch '3.5.x' into 4.0.x 2026-04-03 10:56:16 +02:00
Andy Wilkinson 417107df7a Remove unused dependency on spring-boot-restclient-test
Closes gh-49855
2026-03-31 13:22:50 +01:00
Brian Clozel a6d8c48e13 Merge branch '3.5.x' into 4.0.x
Closes gh-49649
2026-03-18 17:38:12 +01:00
Andy Wilkinson 797253a447 Merge branch '3.5.x' into 4.0.x
Closes gh-49617
2026-03-16 18:00:39 +00:00
Brian Clozel e487a6b499 Improve EndpointRequest matcher documentation
Prior to this commit, `EndpointRequest` exposed factory methods for
creating security matchers in the context of Actuator endpoints. This is
using the popular pattern matching approach for security matchers.
Such matchers are not as focused as method-level security and will match
the endpoint path itself (`"actuator/endpoint"`) as well as everything
beneath it (`"actuator/endpoint/**"`).

This commit improves the Javadoc and reference documentation to make
this behavior more explicit.

Closes gh-49520
2026-03-09 11:25:39 +01:00
Andy Wilkinson 0ffffee4bf Upgrade to Nullability Plugin 0.0.9
Closes gh-48638
2026-01-08 11:59:51 +00:00
Phillip Webb 581f648c3c Fix Assertions static imports
See gh-48630
2026-01-06 13:23:46 -08:00
Phillip Webb e93f9c313c Guard against WebServerApplicationContext not being present
Update security matchers and WebFlux actuator support to guard against
the `WebServerApplicationContext` class not being present.

Fixes gh-48388
2025-12-03 22:41:32 -08:00
Phillip WebbandAndy Wilkinson 619454548b Restore support for Jersey
Restore support for Jersey now that it supports JAX-RS 4.

Closes gh-47967

Co-authored-by: Andy Wilkinson <andy.wilkinson@broadcom.com>
2025-11-05 10:51:08 -08:00
Andy Wilkinson b2d2fb82c0 Align test class name with name of class under test 2025-10-29 10:15:58 +00:00
Stéphane Nicoll 7bde0e65f1 Fix typos
Closes gh-47818
2025-10-27 14:55:39 +01:00
Andy Wilkinson 5fbdfad11e Remove test dependency from spring-boot-security
Closes gh-47813
2025-10-27 10:39:29 +00:00
Andy Wilkinson aa95282290 Polish @since tags
Closes gh-47779
2025-10-23 12:48:58 +01:00
Phillip Webb 350179901f Merge branch '3.5.x'
Closes gh-47751
2025-10-21 15:04:57 -07:00
Phillip Webb c2e68c0911 Refactor security auto-configuration package structure
Refactor security auto-configuration package structure and classes to
create distinct web configurations.

Closes gh-14412
2025-10-16 14:10:08 -07:00
Phillip Webb 8f89bd304f Polish code to fix warnings 2025-10-14 21:51:25 -07:00
Phillip Webb 34e0382858 Move actuator heath code to spring-boot-health
Closes gh-46357
2025-10-14 21:51:24 -07:00
Moritz Halbritter cddd8e3dd1 Add nullability annotations to tests in module/spring-boot-security
See gh-47263
2025-10-13 15:15:50 +02:00
Andy Wilkinson 5afbec7033 Correct package in spring-boot-resttestclient to match module name
See gh-46356
See gh-47322
2025-10-10 12:50:48 +01:00
Andy WilkinsonandPhillip Webb 9eb05ebb10 Create spring-boot-resttestclient and spring-boot-webtestclient modules
Create `spring-boot-resttestclient` and `spring-boot-webtestclient`
modules to hold test client auto-configuration and `TestRestTemplate`
code.

Previous these classes were contained in `spring-boot-resetclient-test`
and `spring-boot-webclient-test` which was incorrect since the `-test`
modules should hold code need to test the given modules, not supporting
test classes.

See gh-46356

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2025-10-09 22:12:39 -07:00
Stéphane Nicoll 3f2e1b2466 Polish "Include /fonts/** to common static locations"
See gh-46208
2025-10-06 08:51:17 +02:00
Shahab Kondri 74daedff76 Include /fonts/** to common static locations
This commit updates StaticResourceLocation to include a new entry for
the common locations of fonts. As a result,
StaticResourceRequest#atCommonLocations now includes /fonts/** as well.

See gh-46208

Signed-off-by: Shahab Kondri <shahab.kondri@gmail.com>
2025-10-06 08:40:57 +02:00
Phillip Webb 2a521ce4e9 Remove spring-boot-web-server-test module
Remove the `spring-boot-web-server-test` module, adding
`SpringBootTestRandomPortContextCustomizerFactory` to
`spring-boot-web-server` as a replacement for
`SpringBootTestRandomPortApplicationListener`.

See gh-46356
See gh-47322
2025-10-01 21:54:54 -07:00
Phillip Webb bba56ffc8b Move RestTestClientBuilderCustomizer to spring-boot-test
Relocate `RestTestClientBuilderCustomizer` to `spring-boot-test`
and break the direct link to web-server by making use of
`spring.factories` and the new `BaseUrlProviders` class.

See gh-46356
2025-10-01 21:51:20 -07:00
Phillip Webb 4b2d358384 Refine spring-boot-test-autoconfigure dependencies
Make `spring-boot-test-autoconfigure` optionally depend on
`spring-boot-autoconfigure` so that it can be an `api` dependency
for `*-test` modules. Also relocate it to core.

See gh-47322
2025-10-01 21:41:55 -07:00
Andy Wilkinson 5348880b69 Modularize spring-boot-test-autoconfigure
This commit modularizes spring-boot-test-autoconfigure. It now
contains only the code that's central to test auto-configuration.
Feature-specific functionality has moved out into -test modules,
some existing and some newly created. For example, `@DataJpaTest` can
now be found in spring-boot-data-jpa-test.

Closes gh-47322
2025-09-25 13:11:35 +01:00
Andy Wilkinson e764878b6d Address some missed parts of the Jackson 3 migration
See gh-45535
2025-09-09 18:09:35 +01:00
Andy Wilkinson 8bfb170ebc Remove support for Jersey
Spring Boot 4 requires Jakarta EE 11. Jersey 4 will support EE 11 but
its release schedule is uncertain. Furthermore, Jersey does not yet
support Jackson 3 and there's no clear timeline for when Jackson 3
will be supported.

In light of the above, this commit removes support for Jersey.
Reinstating support can be considered once there's a Jersey GA that
supports Jakarta EE 11 or its clear that one will be available in
time for Boot's GA in November. Ideally, support for Jackson 3 would
also be available before reinstating Jersey support.

Closes gh-47017
2025-09-02 11:36:52 +01:00
Moritz Halbritter dcd25abcce Improve null-safety of module/spring-boot-security
See gh-46926
2025-08-26 14:22:56 +02:00
Stéphane Nicoll 4e425a9b4d Adapt to latest changes in Spring Security snapshots
See https://github.com/spring-projects/spring-security/issues/17746
2025-08-18 16:28:07 +02:00
Phillip Webb 11c5a8c404 Upgrade to OpenSAML 5
Remove OpenSAML 4 build overrides and add Shibboleth Releases maven
repository so we can build against OpenSAML 5.

Closes gh-46851
2025-08-15 09:38:58 -07:00
Moritz Halbritter 9387d8aa10 Add nullability annotations to module/spring-boot-security
See gh-46587
2025-08-06 10:13:38 +02:00
Moritz Halbritter c0f1f641ce Make auto-configurations final and remove public members
Closes gh-32883
2025-07-29 09:48:49 +02:00
Andy Wilkinson 05c877d61c Only apply path to default PathPatternRequestMatcher.Builder
Prior to this commit, if the user defined a custom
PathPatternRequestMatcher.Builder, security auto-configuration would
still set its base path to matcher the dispatcher servlet path.
We need to give the user more control in this situation.

If the user has defined a custom builder bean it should have a name
other than pathPatternRequestMatcherBuilder. This different name is
required to prevent a clash with the @Fallback bean that's defined
by Security's AuthorizationConfiguration. This commit changes the
bean post-processor so that it will only apply to a bean named
pathPatternRequestMatcherBuilder. By using a different name (which
is necessary unless overriding is enabled) to use can take complete
control of the path pattern request matcher builder.

See gh-45492
2025-07-21 10:57:42 +01:00
Phillip Webb decc32dde3 Restructure project directories to better fit Gradle
Closes gh-46358
2025-07-10 17:54:08 -07:00