- 首先考慮你要做的是什么?
分布式權限管理.
- 分布式權限需要哪些內容?
權限控制中心,客戶端
- 權限控制中心是用來做什么?
用來提供服務給子系統/客戶端
提供登錄返回憑證
提供注冊
提供注銷
提供所有資源
- 客戶端需要做什么?
攔截請求
詢問服務中心
接收資源
設計(包括流程,數據結構)

關於簡單表格設計
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