论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
权限管理系统--系统权限篇
权限管理系统--系统权限篇
反转基因福娃
金牌会员
|
2024-5-15 09:12:40
|
显示全部楼层
|
阅读模式
楼主
主题
914
|
帖子
914
|
积分
2742
一、前言
随着网络的发展,企业对于信息系统数据的保密工作愈发重视,不同身份、角色对于数据的访问权限都应该大相径庭。
列如
1、不同登录职员对一个数据列表的可见度是不一样的,如数据列、数据行、数据按钮等都可能不太一样。
2、表单的灵活计划及呈现。
3、流程的灵活计划及呈现。
4、接口的调用信息者及性能监控。
5、等等。
对于以上等功能,如果要做出一套完整且灵活的权限管理系统,实属不易。
而接下来作者要先容的“
OverallAuth
”权限管理系统,可以说是最全面和最好用的权限管理系统。
说明:这篇文章作者会把完成“
OverallAuth
”系统的技术选型和大致计划思路逐一分享给各人。文章较长请各人耐烦看完,在文章的最后有项目的预览地址。
二、目录
三、主要技术选择
4、功能先容及计划简述
4.1 菜单计划
菜单计划非常简单,就是普通的树形布局,但作者依赖于layui vue 强大的功能布局,在此基础上对每个菜单计划了一个重定向和菜单是否启用的开关。
说明:菜单是否启用的存在,可以精准的控制,每个菜单在什么时间开启,什么关闭(共同使命调度)。这样可以针对性调解用户在什么时间拥有什么样的菜单(比如说用于运动页面,在运动结束后,可以立马关闭),大大减低了维护成本。
如图:
4.2 角色管理
角色对于任何一个系统来说都是重中之重,本系统当然也不例外。
“OverallAuth”系统的角色几乎覆盖了所有功能,按钮、菜单、用户、数据行、数据列、流程、表单等。所以在计划方面,我分别建立了以下关系,角色和按钮、角色和菜单、角色和用户、角色和数列等。以便灵活且高效的控制系统中的任何一个功能。
当然角色也不是全能的,对于更加细致化的控制,角色也有过于“拥挤”的时间,所以在“OverallAuth”系统中,作者还加入了一些规则以便更加细致的控制每个模块。
4.3 用户管理
之前也说到,角色和用户存在关系,以便控制用户的菜单权限等,这和一般的权限管理系统基本一致,但本“OverallAuth”系统作为一个灵活且好用的权限管理系统,作者在这上面下了肯定功夫,引入了“用户组”等概念。简单来说就是一个用户可以拥有多种角色,角色之间是互补状态。
4.4 按钮样式
在一个系统中,利用按钮是必不可少的,它们的样式也大相径庭,所以作者计划了自定义按钮样式功能,如图:
该功能可以控制系统中任何一个按钮的样式,从而做到实时改变每个按钮样式。
4.5 按钮列表
在拥有自定义按钮样式后,当然要把样式运用到每个按钮之上,所以作者做了一个系统列表,来控制每个功能的按钮样式和按钮事故及按钮名称等,如图:
为了高效的开发,作者对按钮控制写了一套模版,开发者只需要在有使用按钮的地方,加入模版便可以或许得到相应的按钮。
4.5 菜单权限、按钮权限
菜单权限和按钮权限,又称“功能级权限”,这是大多数系统都拥有的功能,它的实现方式也很简单,就是每个菜单、按钮都可以通过角色来设置用户的可利用“单元”。如图:
“功能级权限”对于一般系统来说已经足够,但对于要求较高的系统来说还远远不够。所以作者编写出了一套能高效控制“数据列”、“数据行”的功能级权限管理。
4.6 显示列设置
在说如何控制“数据列”权限前,我想先说说数据列的动态获取,只有把握了需要显示的数据列,才气有效的控制它。
在webapi中,作者写了一个接口(通过反射),以便获取所有需要显示的数据列。此中包罗字段、字段类型、字段描述等信息。并且在此基础上可以编辑改变字段显示的名称、宽度、排序方式、对齐方式、插槽、是否行权限字段等信息。如图
在上述图片中,可以看到有一个“同步属性”的按钮,只要返回字段有变动,便会主动同步其变动信息,使其作用到系统每一个显示的地方,让开发更便捷。
4.7 数据列权限
什么是数据列权限,举一个简单的列子。
职员A和职员B都有一个“员工信息”的列表。此中“员工信息”中有一列为“工资”的数据。为了工资保密,员工A有查看职员工资的权限,员工B没有查看权限,那么就需要数据列权限。
而作者在“OverallAuth”系统中,结合4.6 显示列设置 这一功能,完成了这一功能,且能很灵活的控制每个模块列的显示情况。如图所示:
下面是admin和张三两个用户数据列的对比图
4.8 数据行权限
对于数据行权限,作者使用动态解析的方式,写了一套数据行权限的解析规则(把界面上选择要建立规则的字段,动态解析成步伐能识别的代码)。可以灵活的设置数据的显示规则。如图所示
通过上述图片可以看到,设置规则后,同一个用户列表,同一个登录人,只能看到符合规则的数据。
5、预览地址
1、预览地址:http://139.155.137.144:8012
2、qq群:801913255
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
正序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
发新帖
回复
反转基因福娃
金牌会员
这个人很懒什么都没写!
楼主热帖
设计模式---组合模式
Spark快速上手(4)Spark核心编程-Spark ...
拿到12家offer,想给大家分享一下面试 ...
【Unity3D】Transform组件
【渗透攻击】PowerShell与Shell 有什么 ...
如何将鸿蒙(harmonyOS)系统退回安卓 ...
写了这么久Java项目,是否还记得你的第 ...
软件工程经济学第一章
使用 Kubeadm 部署 K8S安装
echarts使用及遇到的问题
标签云
存储
挺好的
服务器
快速回复
返回顶部
返回列表