Skip to content

权限管理与验证

系统验证权限是基于 SaToken,Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、单点登录、OAuth2.0、分布式 Session 会话、微服务网关鉴权等一系列权限相关问题

系统 admin 端以及 site 端验证权限流程

系统平台管理以及站点管理端的接口统一是 域名/adminapi,系统会根据当前接口是/adminapi 来进行检测,所以后台接口统一增加 adminapi

  1. 通过网址检测接口是后台还是前台,后台网址域名加 adminapi

  2. 验证接口是否需要登录,这里使用注解 @SaCheckLogin

  3. 如果需要登录,验证站点管理权限,说明:平台端站点 ID 为0

  4. 如果有站点访问权限,验证具体功能接口权限,首先验证是否是管理员,如果是站点管理员,直接权限通过

  5. 如果不是站点管理员,检测用户是够具有功能接口权限,这里根据用户所在用户组权限验证

系统站点前端接口权限验证

系统站点前端的接口统一是 域名/api,系统会根据当前接口是/api 来进行检测,所以后台接口统一增加 api

  1. 通过网址检测接口是后台还是前台,前台接口网址域名加 api

  2. 验证接口是否需要登录,这里使用注解 @SaCheckLogin

  3. 验证站点是否开启

  4. 验证站点渠道是否开启

  5. 验证会员是否是站点会员

系统功能代码以及注解说明

后台 adminapi 权限验证流程代码

前台 api 权限验证流程代码

登录验证注解,如果当前控制器需要登录验证使用注解 @SaCheckLogin,如下图所示

如果针对具体接口增加权限验证,是通过设置用户组,用户关联用户组来确定

基于 MIT 协议发布