SpringBoot与SpringSecurity结合,如何设计权限控制的基本数据模型?
- 内容介绍
- 文章标签
- 相关推荐
本文共计638个文字,预计阅读时间需要3分钟。
系列文章目录:
1.SpringBoot整合SpringSecurity实现权限控制(一):实现原理
2.文档目录
3.前言
4.一、RBAC是什么?
5.二、数据模型
6.三、数据模型的测试
系列文章目录
《SpringBoot整合SpringSecurity实现权限控制(一):实现原理》
本文目录
- 前言
- 一、RBAC是什么?
- 二、数据模型
- 三、数据模型的测试
前言
- 在上篇文章中我们仅仅使用了静态权限数据进行了模拟测试。实际正常情况的流程是:
- 本文将通过 RBAC(Role-Based Access Control:基于角色的访问控制策略)进行权限模型设计
一、RBAC是什么?
- 通过用户关联角色,角色关联功能(资源)的方式,使得用户间接持有了功能(资源)。
- 示例
二、数据模型
- 根据以上RBAC的理解,我们一般会对数据模型这样设计:
- ER图
三、数据模型的测试
- 建立了以上的模型,我们可以通过一段简单的SQL语句来查询某个用户所拥有的权限:
*
FROM
sys_menu
WHERE
id IN ( SELECT menu_id FROM sys_permission WHERE role_id IN ( SELECT role_id FROM sys_user_role WHERE user_id = 15 ) )
本文共计638个文字,预计阅读时间需要3分钟。
系列文章目录:
1.SpringBoot整合SpringSecurity实现权限控制(一):实现原理
2.文档目录
3.前言
4.一、RBAC是什么?
5.二、数据模型
6.三、数据模型的测试
系列文章目录
《SpringBoot整合SpringSecurity实现权限控制(一):实现原理》
本文目录
- 前言
- 一、RBAC是什么?
- 二、数据模型
- 三、数据模型的测试
前言
- 在上篇文章中我们仅仅使用了静态权限数据进行了模拟测试。实际正常情况的流程是:
- 本文将通过 RBAC(Role-Based Access Control:基于角色的访问控制策略)进行权限模型设计
一、RBAC是什么?
- 通过用户关联角色,角色关联功能(资源)的方式,使得用户间接持有了功能(资源)。
- 示例
二、数据模型
- 根据以上RBAC的理解,我们一般会对数据模型这样设计:
- ER图
三、数据模型的测试
- 建立了以上的模型,我们可以通过一段简单的SQL语句来查询某个用户所拥有的权限:
*
FROM
sys_menu
WHERE
id IN ( SELECT menu_id FROM sys_permission WHERE role_id IN ( SELECT role_id FROM sys_user_role WHERE user_id = 15 ) )

