领先一步
VMware 提供培训和认证,助您加速发展。
了解更多使用 @AuthorizeReturnObject
或 Spring Security 生成的 AuthorizationAdvisorProxyFactory
@Bean
来包装对象的应用程序可能未应用所有安全建议。
当方法安全建议未应用时,这意味着像 @PreFilter
和 @PreAuthorize
这样的注解可能不会对这些被包装的对象产生任何影响。
请注意,这*不*会影响使用 Spring Security 方法安全建议的任何 @Bean
。
要使此问题影响应用程序,必须满足以下所有条件:
AnnotationAwareAspectJAutoProxyCreator
作为自动代理创建器来创建代理;这可以通过应用程序声明性地完成,或通过 @EnableAspectJAutoProxy
启用,或通过 Spring Boot 使用 spring-aspects
或使用 spring-aspects
的 starter 来启用。FactoryBean
。@EnableMethodSecurity
启用方法安全。@AuthorizeReturnObject
注解或 Spring Security 生成的 AuthorizationAdvisorProxyFactory
@Bean
来包装对象。@PreFilter
、@PostFilter
、@PreAuthorize
或 @PostAuthorize
。如果所有这些条件都为真,则某些方法安全建议可能不会应用于由 @AuthorizeReturnObject
或 AuthorizationAdvisorProxyFactory
包装的对象。
满足以下任何条件的应用程序*不受*影响:
@PreFilter
、@PostFilter
、@PreAuthorize
或 @PostAuthorize
。@EnableMethodSecurity
启用方法安全。@AuthorizeReturnObject
或 Spring Security 生成的 AuthorizationAdvisorProxyFactory
@Bean
。FactoryBean
。AnnotationAwareAspectJAutoProxyCreator
进行自动代理创建。这影响以下 Spring Security 版本:
受影响版本的用户应升级到相应的修复版本。
受影响版本 | 修复版本 | 可用性 |
---|---|---|
6.3.x | 6.3.2 | OSS |
无需采取其他缓解措施。
此问题由 Josh Cummings 负责任地报告。
如需报告 Spring 项目组合中的安全漏洞,请参阅安全政策