Spring Security @PreAuthorize @PostAuthorize 权限控制

@PreAuthorize : 在方法执行之前进行权限验证

@PostAuthorize : 在方法执行之后进行权限验证

注解参数:

hasRole,对应 public final boolean hasRole(String role) 方法,含义为必须含有某角色(非ROLE_开头),如有多个的话,必须同时具有这些角色,才可访问对应资源。

hasAnyRole,对应 public final boolean hasAnyRole(String... roles) 方法,含义为只具有有某一角色(多多个角色的话,具有任意一个即可),即可访问对应资源。

hasAuthority,对应 public final boolean hasAuthority(String authority) 方法,含义同 hasRole,不同点在于这是权限,而不是角色,区别就在于权限往往带有前缀(如默认的ROLE_),而角色只有标识。

hasAnyAuthority,对应 public final boolean hasAnyAuthority(String... authorities) 方法,含义同 hasAnyRole,不同点在于这是权限,而不是角色,区别就在于权限往往带有前缀(如默认的ROLE_),而角色只有标识

permitAll,对应 public final boolean permitAll() 方法,含义为允许所有人(可无任何权限)访问。

denyAll,对应 public final boolean denyAll() 方法,含义为不允许任何(即使有最大权限)访问。

isAnonymous,对应 public final boolean isAnonymous() 方法,含义为可匿名(不登录)访问。

isAuthenticated,对应 public final boolean isAuthenticated() 方法,含义为身份证认证后访问。

isRememberMe,对应 public final boolean isRememberMe() 方法,含义为记住我用户操作访问。

isFullyAuthenticated,对应 public final boolean isFullyAuthenticated() 方法,含义为非匿名且非记住我用户允许访问。

相关推荐
想做小南娘,发现自己是女生喵40 分钟前
第 2 章 顺序表和 vector
java·数据结构·算法
神奇小汤圆1 小时前
SpringBoot 相关的 Skills 全景指南
后端
神奇小汤圆1 小时前
高性能进程内队列 BufferQueue 1.0 版本发布
后端
CHANG_THE_WORLD1 小时前
6.多线程的TCP通信
java·网络·tcp/ip
爸爸6191 小时前
空数据状态与引导:多维度 UI 提示设计
后端
Reart2 小时前
Leetcode 674.最长连续递增序列 (719)
后端·算法
sun03222 小时前
【笔记】Spring MVC 相关介绍
java·spring·mvc
芒鸽2 小时前
HarmonyOS ArkUI Search 搜索框:联想词、历史记录与热门标签
后端
兰令水3 小时前
hot100【acm版】【2026.7.18打卡-java版本】
java·开发语言·算法
Reart3 小时前
Leetcode 714.买卖股票的最佳时机含手续费(719)
后端·算法