自定义后端URL访问权限控制(注解方式)
一、背景
该文章将记录本人在项目中遇到的一个小问题和解决方案。
项目中使用Spring Security做认证和授权,权限只在前端做了按钮控制,若没有权限的用户直接通过URL也能访问,该文章主要记录通过注解方式控制后端URL访问权限。
二、数据库建表
权限控制标配的五张表(关联关系如下图所示):
用户表、角色表、菜单表、用户与角色关联表、角色与菜单关联表
三、后台代码实现
1. 创建权限控制注解(注解类名自定义)
@Target({
ElementType.TYPE, ElementType.METHOD}) // 注解的参数可以根据自己的需要设置
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RequestPermissions {
String value() default "";
}
2. 获取注解
private RequestPermissions getAnnotationLog(JoinPoint joinPoint)