后台管理系统权限管理模块设计

本文介绍了后台管理系统中常见的用户-角色-权限(URP)授权模型,阐述了如何通过角色分配实现用户权限控制。进一步讨论了权限的细化,提出了用户-角色-权限-资源(UPR)模型,强调了资源和操作模块的分离,以优化数据结构和内存管理。这种模型更适应实际业务场景,便于权限管理和系统维护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用户-角色-权限 授权模型

在后台管理系统访问控制中,我们比较常见的就是基于角色的访问控制。通过查询用户所拥有的角色,角色所拥有的权限,来决定该访问是否放行。如此就构成了“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间、角色与权限之间,通常都是多对多的关系。使用DBeaver展示数据结构的ER图
在这里插入图片描述

通过ER图,我们可以明了的理解到,角色是一定数量权限的集合,通过给用户分配不同的角色使用户获得不同的权限集。

如此这般,就比较贴近我们日常生活中的企业管理了。比如,给人事岗的用户分配人事角色,该角色可以执行用户增删等操作;给财务岗的用户分配财务角色,该角色可进行账目的增删等操作;而不是每新增一个用户,需要分配大量的权限使其可以操作。

用户-角色-权限-资源模型

接下来对“权限”进行拆分
通常在应用系统里面的权限我们把它表现为菜单的访问(页面跳转)、功能模块的操作(按钮点击),甚至页面上某个按钮、图片是否可见等等都属于权限的范畴。有些权限设计,会把功能操作作为一类,菜单、页面元素等作为另一类,这样构成“用户-角色-权限-资源”的授权模型。
在这里插入图片描述

这样做的好处是,在数据结构方面,资源只需要存储资源相关的数据,操作模块只需要存储操作模块相关的数据。而不是全部冗余在权限表中。
在应用中,应用只需要给登录的用户存储sys_power表中的数据即可。将资源、按钮等信息单独在服务器内存中放一块,必要的时候进行查询,节省不必要的内存开支。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值