接口权限
# 什么是接口权限
接口权限,顾名思义请求接口API的权限控制。
- 有别于登录权限的是接口权限必须拥有登录权限。
该功能依赖于 单点登录SSO 组件
# 权限注解
权限注解 Permission
注解在 Controller
层接口方法体上。
- 注解权限编码
sys:user:page
系统用户分页接口
@Permission("sys:user:page")
- 忽略权限注解
@Permission(ignore = true)
# 权限校验
/**
* 权限授权处理器
*/
public class Authorization implements SSOAuthorization {
@Override
public boolean isPermitted(SSOToken token, String permission) {
// token 为 kisso 登录票据,用户ID 重要信息从中获取
// permission 为权限注解编码
// 根据 用户ID 数据库中读取校验是否拥有 permisssion 编码接口权限
}
}
- 注入权限拦截器,需要注意的是放在登录拦截器之后
SSOPermissionInterceptor permissionInterceptor = new SSOPermissionInterceptor();
// 别忘记注入权限处理器
permissionInterceptor.setAuthorization(new Authorization());
InterceptorRegistration registrationPermission = registry.addInterceptor(permissionInterceptor);
registrationPermission.addPathPatterns("/**");
上次更新: 2022/05/05, 16:05:41