004 SpringSecurity验证规则
作者:互联网
SpringSecurity验证规则
- SpringSecurity框架登录后,==在userDetails对象中,一定会有一个权限列表 ==
- 登录用户对象的值可能是:
{"authorities":["ROLE_user"],"id":1,"userType":"USER","username":"jackson"}
- 前后台登录时
- sso模块前台用户登录时, 会authorities属性中添加
ROLE_user
权限 - 后台管理用户登录时, 会向authorities属性中添加下面属性
["/pms/product/read","/pms/product/update","/pms/product/delete"]
4.所以想要在控制器运行前判断权限时就可以使用下面的写法
@PreAuthorize注解hasAuthority和hasRole的区别
以下四种注解效果等同:
- 通用指令
@PreAuthorize("hasAuthority('/pms/product/read')")
@PreAuthorize("hasAuthority('ROLE_user')")
- 可以说专用于判断当前用户角色的指令
@PreAuthorize("hasRole('ROLE_user')")
@PreAuthorize("hasRole('user')")
- hasRole判断是专用于判断当前用户角色的指令
- hasRole会自动在我们判断的内容前添加ROLE_
标签:product,验证,PreAuthorize,pms,hasRole,ROLE,user,004,SpringSecurity 来源: https://www.cnblogs.com/yzoran/p/16483881.html