1
0
mirror of synced 2026-05-22 21:33:16 +00:00

Deprecate Jackson 2 support

This commit does not cover webauthn which is a special case (uses
jackson sub-package for Jackson 2 support) which will be handled in
a distinct commit.

See gh-17832
Signed-off-by: Sébastien Deleuze <sdeleuze@users.noreply.github.com>
This commit is contained in:
Sébastien Deleuze
2025-09-01 18:24:08 +02:00
committed by Rob Winch
parent 65a14d6c6d
commit 48854c3ac9
104 changed files with 381 additions and 22 deletions
@@ -40,7 +40,12 @@ import org.springframework.security.saml2.provider.service.authentication.Defaul
* @since 5.7
* @see Saml2Jackson2Module
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.DefaultSaml2AuthenticatedPrincipalMixin}
* based on Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE)
@JsonIgnoreProperties(ignoreUnknown = true)
@@ -42,7 +42,12 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2R
* @since 7.0
* @see Saml2Jackson2Module
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.Saml2AssertionAuthenticationMixin}
* based on Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE,
isGetterVisibility = JsonAutoDetect.Visibility.NONE)
@@ -32,7 +32,12 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2A
* @since 5.7
* @see Saml2AuthenticationException
* @see Saml2Jackson2Module
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.Saml2AuthenticationExceptionMixin}
* based on Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.NONE, getterVisibility = JsonAutoDetect.Visibility.NONE,
isGetterVisibility = JsonAutoDetect.Visibility.NONE)
@@ -41,7 +41,12 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2A
* @since 5.7
* @see Saml2Jackson2Module
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.Saml2AuthenticationMixin} based on
* Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE,
isGetterVisibility = JsonAutoDetect.Visibility.NONE)
@@ -31,7 +31,11 @@ import org.springframework.security.saml2.core.Saml2Error;
* @since 5.7
* @see Saml2Error
* @see Saml2Jackson2Module
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.Saml2ErrorMixin} based on Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE,
isGetterVisibility = JsonAutoDetect.Visibility.NONE)
@@ -40,8 +40,12 @@ import org.springframework.security.saml2.provider.service.authentication.logout
* @author Ulrich Grave
* @since 5.7
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@link org.springframework.security.saml2.jackson.Saml2JacksonModule} based on Jackson
* 3
*/
@SuppressWarnings("serial")
@Deprecated(forRemoval = true)
@SuppressWarnings({ "serial", "removal" })
public class Saml2Jackson2Module extends SimpleModule {
public Saml2Jackson2Module() {
@@ -50,6 +54,7 @@ public class Saml2Jackson2Module extends SimpleModule {
@Override
public void setupModule(SetupContext context) {
// TODO Is it expected that default typing in not configured here?
context.setMixInAnnotations(Saml2Authentication.class, Saml2AuthenticationMixin.class);
context.setMixInAnnotations(Saml2AssertionAuthentication.class, Saml2AssertionAuthenticationMixin.class);
context.setMixInAnnotations(Saml2ResponseAssertion.class, SimpleSaml2ResponseAssertionAccessorMixin.class);
@@ -42,7 +42,12 @@ import org.springframework.security.saml2.provider.service.registration.Saml2Mes
* @since 5.7
* @see Saml2Jackson2Module
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.Saml2LogoutRequestMixin} based on
* Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE)
@JsonIgnoreProperties(ignoreUnknown = true)
@@ -38,7 +38,12 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2P
* @since 5.7
* @see Saml2Jackson2Module
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.Saml2PostAuthenticationRequestMixin}
* based on Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE)
@JsonIgnoreProperties(ignoreUnknown = true)
@@ -38,7 +38,12 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2R
* @since 5.7
* @see Saml2Jackson2Module
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.Saml2RedirectAuthenticationRequestMixin}
* based on Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE)
@JsonIgnoreProperties(ignoreUnknown = true)
@@ -40,7 +40,12 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2R
* @since 7.0
* @see Saml2Jackson2Module
* @see SecurityJackson2Modules
* @deprecated as of 7.0 in favor of
* {@code org.springframework.security.saml2.jackson.SimpleSaml2ResponseAssertionAccessorMixin}
* based on Jackson 3
*/
@SuppressWarnings("removal")
@Deprecated(forRemoval = true)
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS)
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE,
isGetterVisibility = JsonAutoDetect.Visibility.NONE)
@@ -26,6 +26,7 @@ import org.springframework.security.saml2.provider.service.authentication.Defaul
import static org.assertj.core.api.Assertions.assertThat;
@SuppressWarnings("removal")
class DefaultSaml2AuthenticatedPrincipalMixinTests {
private ObjectMapper mapper;
@@ -27,6 +27,7 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2A
import static org.assertj.core.api.Assertions.assertThat;
@SuppressWarnings("removal")
class Saml2AuthenticationExceptionMixinTests {
private ObjectMapper mapper;
@@ -26,6 +26,7 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2A
import static org.assertj.core.api.Assertions.assertThat;
@SuppressWarnings("removal")
class Saml2AuthenticationMixinTests {
private ObjectMapper mapper;
@@ -32,6 +32,7 @@ import org.springframework.security.saml2.provider.service.registration.Saml2Mes
import static org.assertj.core.api.Assertions.assertThat;
@SuppressWarnings("removal")
class Saml2LogoutRequestMixinTests {
private ObjectMapper mapper;
@@ -26,6 +26,7 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2P
import static org.assertj.core.api.Assertions.assertThat;
@SuppressWarnings("removal")
class Saml2PostAuthenticationRequestMixinTests {
private ObjectMapper mapper;
@@ -26,6 +26,7 @@ import org.springframework.security.saml2.provider.service.authentication.Saml2R
import static org.assertj.core.api.Assertions.assertThat;
@SuppressWarnings("removal")
class Saml2RedirectAuthenticationRequestMixinTests {
private ObjectMapper mapper;