1.什么是接口资源
用户哪些接口是能看到的,有哪些接口是能访问的,那么这些用户能访问的接口就称之为这个用户的接口资源,如果该用户没有对应的接口,后端应该返回403(没有权限)
2.权限鉴定
访问Controller层时,或者说访问接口时,会有一个@PreAuthorize注解进行权限鉴定
进入hasPermi方法进行权限校验,hasPermi方法接到的参数permission是数据库设计的权限字符串(就是上图中的"business:business:gain"),是给定的,然后进行校验,如下图
通过getLoginUser方法(上图)获取用户的权限信息,进行是否为空判断,如果不为空就接着进行校验,如下图
permissions是所有的权限,进行判断,如果permissions包含所有权限,就ok
以上是我理解的,如果不严谨,勿喷