版权声明:有问题欢迎留言,转载请声明出处 https://blog.csdn.net/larger5/article/details/84579431
一、前言
1、2018.11 月份,笔者参与了 广东海洋大学课室管理系统 的开发,开发人员由 ITAEM 软件开发团队(艾腾团队)组成。
2、笔者之前参与过 广东海洋大学学生宿舍管理系统 的开发,这次不打算参与无脑耗时的业务逻辑模块(CRUD),负责权限管理系统模块。
3、起初打算使用 Shiro/SpringSecurity
来做个这个权限管理系统的。但是由于时间紧迫,业务人员已经写了很多接口了。而框架带来优点的同时,也带来了限制,使用框架,可能导致很多后台接口要重写。为了稳住队友的心态,打算写个低入侵式的权限管理系统,不得不放弃框架,使用了基本的 SpringBoot
,愿一切顺利。
二、资料
1、代码 GitHub 地址:
https://github.com/larger5/SpringBoot_SpringDataJpa_RBAC.git
2、代码结构关系
3、数据库表关系
demo 中数据库中表对创建、关系都是有 SpringDataJpa
自动生成的
4、权限接口测试
本 demo 使用了 Swagger
,可以很轻松地对接口进行测试。
三、思路
1、数据库设计
使用 用户表、角色表、权限表,以及 用户角色、角色权限表 两张关系表。
2、拦截器
使用两个 Spring
式对拦截器
① 身份认证
② 授权
Shiro、SpringSecurity
也是这种模式。
四、其他
在做个项目之前,打算考虑使用基于 SpringBoot
的 renren-fast
框架的,里边自动含有了 RBAC
权限模块。
- 前端Git地址:https://github.com/daxiongYang/renren-fast-vue
- 后端Git地址:https://gitee.com/renrenio/renren-fast
- 官方社区:http://www.renren.io
目前系统迭代更新中,
① 使用 md5 进行加密
② 基于用户 id 的权限认证,否则登陆一个账号,就可以对同级对所有账号进行后台操作。
③ 。。。
有空再续。