- 首先考虑你要做的是什么?
分布式权限管理. - 分布式权限需要哪些内容?
权限控制中心,客户端 - 权限控制中心是用来做什么?
用来提供服务给子系统/客户端
提供登录返回凭证
提供注册
提供注销
提供所有资源
- 客户端需要做什么?
拦截请求
询问服务中心
接收资源
设计(包括流程,数据结构)

关于简单表格设计
1. app表管理子系统,注册子系统分配appCode
2. user表管理用户信息状态
3. role表管理角色
4. function表管理功能菜单以及各级菜单之间的继承关系
其他表为关系表以及字典表
关于流程设计 省略 脑补O(∩_∩)O~
1.用户--请求--> 子系统1--拦截器认证失败-->权限中心--返回登录页面-->
2.用户--登录-->权限中心--返回凭证/资源--> 子系统1--接收并保存凭证/资源-->
3.用户--请求-->子系统1--拦截器认证成功-->
4.用户--请求-->子系统2--拦截器认证失败-->权限系统--认证成功-->
进行技术选型: SpringBoot/SpringCloud Shiro Mybatis 以及Redis
实现:
!注: 系统间通信方式可选RPC,HTTP,DUBBO,SPRING CLOUD
由于时间关系,代码上传到代码库如有需要请联系我哦~原文地址:https://www.jianshu.com/p/4eb0d61d9a0c