Spring WebFlux与React用于搭建后台管理系统(10):配合使用Redis实现鉴权
发布时间
阅读量:
阅读量
对于网关类服务,可将路由信息及其对应的权限数据存储至redis数据库中,当用户发起访问请求时,由网关执行鉴权操作:
- 首先比对token与redis缓存中的token信息,若不存在则直接返回
- 对token进行jwt解析,提取其中的roles字段
- 根据api的路径及访问方式,在redis数据库中查询该接口允许访问的roles列表
- 若token中包含的roles与接口所要求的roles存在交集,则判定具有访问权限,否则返回拒绝
- 同时将获取到的roles信息通过
ReactiveSecurityContextHolder进行设置
1. 启动时api信息写入redis
- 利用
PostConstruct机制在系统初始化阶段,将存储于数据库中的信息迁移至redis中- 键值采用
api_path_method的格式进行构建:String key = "api_" + api.getUrl().trim() + "_" + api.getRemark();
- 键值采用
/** * @author: ffzs
* @Date: 2020/9/1 下午12:52
*/
@Component
@AllArgsConstructor
@Slf4j
@Order
全部评论 (0)
还没有任何评论哟~
