您现在的位置是:首页 >技术交流 >【开放原子训练营(第三季)】inBuilder低代码开发实验室权限控制解析网站首页技术交流

【开放原子训练营(第三季)】inBuilder低代码开发实验室权限控制解析

明志刘明 2024-06-17 10:43:13
简介【开放原子训练营(第三季)】inBuilder低代码开发实验室权限控制解析

大家好,我是刘明,十年创业老兵,开源技术爱好者。
之前我发布了一篇文章,介绍了浪潮海岳推出的低代码平台inBuilder,本文将继续介绍inBuilder的权限管理系统。阅读本文之前,建议先了解一下inBuilder的产品功能和特色。具体可查看上一篇文章:
【开放原子训练营(第三季)】inBuilder低代码开发实验室上手体验

权限控制基础理论

在权限控制里有个模型叫做RBAC模型,相信开发过后台的童鞋应该都多多少少听说过。RBAC全称是Role-Based Access Control,中文是基于角色的访问控制模型。在该模型下,每个用户都有一种或多种角色,通过扮演不同角色获得相应的访问权限。
例如,一家公司中有经理和普通员工两个角色,经理有审批权限,普通员工只有查看和申报权限。用户A的角色是经理,他就获得了审批权限;用户B的角色是普通员工,他就只有查看和申报权限。
这个例子中,容易被我们忽略的是,在一套管理体制中,经理这个角色不是天然的就有审批权限,普通员工这个角色也不是天然的拥有查看和申报权限。这些权限都是董事会授予的。同样的,在我们开发的管理系统中,也必须有一个超级管理员,给经理和普通员工这些角色授予不同权限。

inBuilder权限管理

在inBuilder的权限管理中,我们必须重点关注以下3个概念:

  1. 员工
  2. 岗位
  3. 功能组

每个员工都对应的有自己的岗位,这是符合我们日常生活的经验的,这里的【岗位】其实就是RBAC里面的【角色】。
不好理解的是【功能组】概念。
功能组就是我们例子中提到的权限。经理的审批权限就是一个功能组,普通员工的查看和申报权限也是一个功能组。有童鞋会问,为什么不叫功能而叫功能组呢?其实这是为了授权时的方便。比如查看和申报权限,这是两个功能,我们把他们归为一组后,每次授权,只要选中这一个功能组即可,而不必再去分别勾选查看和申报。

分组是为了操作的方便。

在一家大公司里,员工尤其多,岗位尤其多,功能尤其多。在权限管理中,可以根据业务需求,将经常一起使用的功能分组,也可以根据工作内容不同对员工进行分组,还可将有关联的岗位进行分组,于是inBuilder中就有了【用户分组】和【岗位分组】.将【功能组】进一步分组,就有了【功能组分组】。
额。。。功能组分组。。。听起来是不是有点别扭?
觉得别扭也没关系,因为在开发小型系统中,根本不需要这么复杂。

inBuilder中如何进行权限管理

按照如下步骤设置即可:

  1. 添加功能组分组(不设置功能组分组,就没法添加功能组啊(灬ꈍ ꈍ灬))
  2. 添加功能组
  3. 添加岗位分组(不设置岗位分组,就没法添加岗位啊(灬ꈍ ꈍ灬))
  4. 添加岗位(不设置岗位,就没法添加用户啊(灬ꈍ ꈍ灬))
  5. 添加用户分组
  6. 添加用户

看到了吗?在添加功能组、岗位和用户之前,一定先添加一个分组。

然后该授权了。

功能组授权

在这里插入图片描述

进入功能组后,点击右上角【功能权限】,进入功能勾选页面,将所有功能全部勾选上。
在这里插入图片描述
在这里插入图片描述

岗位授权

在这里插入图片描述
进入岗位设置页面,选择需要授权的岗位之后,点击右上角【编辑】按钮,然后在页面下方【授权功能组】中选择相应的功能组即可。
在这里插入图片描述

用户授权

用户授权就相当简单了,只需要在添加用户时设置好相应的岗位即可了。
在这里插入图片描述

通过几步授权之后,用户有了对应岗位,岗位有了对应功能组,权限管理就基本完成了。

有一些童鞋说应用开发完成并且发布了菜单,但是没有查看到相应的菜单。出现这种情况一定是权限管理出了问题。建议大家从以下几个方面来检查:

  1. 查看菜单不要用超级管理员账户查看,应该新添加一个用户并授权,用新用户的账号来查看
  2. 查看功能组的功能权限列表。新开发的应用大概率没有添加到默认的功能组里去。

如果检查了以上2项,还没有解决问题。那就按照本文的介绍,完整的重头再来设置新的功能组、岗位和用户,然后再看一下吧。

我是刘明,十年创业老兵,开源技术爱好者。无论你是交流学习,还是有开发需求,欢迎私信联系。
有问题,找老刘。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。