SpringSecurity基于注解实现方法级别授权:@PreAuthorize、@PostAuthorize、@Secured
Spring Security 访问权限系列文章:
《SpringSecurity基于配置方法控制访问权限:MVC匹配器、Ant匹配器》
《SpringSecurity基于注解实现方法级别授权:@PreAuthorize、@PostAuthorize、@Secured》
《SpringSecurity设置白名单》
方法调用授权的含义很明确,与 HTTP 端点级别的授权机制一样,人们可以用它来确定某个请求是否具有调用方法的权限。这里可以分成两种情况:如果是在方法调用之前进行授权管理,则称为预授权(PreAuthorization);如果是在方法执行完之后确定是否可以访问方法返回的结构,则称为后授权(PostAuthorization)。
1、开启 Spring Security 全局方法安全机制
注意,默认情况下 Spring Security 并没有启用全局方法安全机制。因此,想要启用该功能,需要使用 @EnableGlobalMethodSecurity 注解。
【示例】开启 Spring Security 全局方法安全机制。
/**
* Spring Security 配置类
* @author pan_junbiao
**/
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true) //开启 Spring Security 全局方法安全机制
public class WebSecurityConfig extends WebSecurityConfigurerAdapter
{
}
注意,在使用 @EnableGlobalMethodSecurity 注解时,设置“prePostEnabled”为 tr