springSecurity注解使用
在使用springboot的时候,大家更习惯于使用注解来进行配置,那么springSecurity注解怎么使用呢
首先开启注解
1 2 3 4
| @EnableGlobalMethodSecurity(// Spring Security 开启注解 securedEnabled=true, // 开启@Secured注解,会创建切点,代理@Secured注解的方法 prePostEnabled = true // 开启@PreAuthorize和@PostAuthorize注解 )
|
@Secured
用户具有哪些角色可以访问,注意要有ROLE_前缀
1 2 3 4 5
| @Secured({"ROLE_student","ROLE_admin"}) public String test(){ System.out.println("secured"); return "test"; }
|
@PreAuthorize
方法进入前进行校验
1 2 3 4 5
| @PreAuthorize("hasAuthority('admin')") public String test(){ System.out.println("preAuthorize"); return "test"; }
|
@PostAuthorize
方法结束后进行校验,可以正常执行,但是返回值需要进行权限校验
1 2 3 4 5
| @PostAuthorize("hasAuthority('admin')") public String test(){ System.out.println("preAuthorize"); return "test"; }
|
@PreFilter
允许方法调用,但是在进去方法前先过滤输入值
@PostFilter
允许方法调用,但是会过滤方法的结果