迁移到 7.0
Spring Security 6.5 是 Spring Security 6.x 系列的最后一个版本。它提供了配置破坏性变更的策略,以便在更新之前使用 7.0 的方式。我们建议您使用 6.5 及其 准备步骤 来简化更新到 7.0 的过程。
更新到 6.5 后,请按照本指南执行任何剩余的迁移或清理步骤。
请记住,如果您遇到问题,准备指南中包含可选择退出以恢复 5.x 行为的步骤。
更新到 Spring Security 7
第一步是确保您使用的是最新补丁版本的 Spring Boot 4.0。接下来,您应该确保您使用的是最新补丁版本的 Spring Security 7。有关如何更新到 Spring Security 7 的说明,请参阅参考指南的 获取 Spring Security 部分。
从 Jackson 2 迁移到 Jackson 3
Jackson 2 ObjectMapper 与 SecurityJackson2Modules 的配置应替换为 Jackson 3 JsonMapper.Builder 与 SecurityJacksonModules 的配置。有关更多详细信息,请参阅 Jackson 3 迁移指南。
建议将 CoreJacksonModule 等单个模块的配置替换为 SecurityJacksonModules 的模块检测,因为它支持自动包含类型信息并配置 PolymorphicTypeValidator 来处理类名验证。
Jackson 3 支持的格式与现已弃用的 Jackson 2 兼容,因此使用 Jackson 2 序列化的类实例应该可以使用 Jackson 3 支持进行反序列化。
spring-security-oauth2-authorization-server 现在默认使用 Jackson 3。如果您想继续使用已弃用的 Jackson 2 支持,则应排除 Jackson 3 的传递依赖 (tools.jackson.core:jackson-databind),并添加对 Jackson 2 的依赖 (com.fasterxml.jackson.core:jackson-databind)。