复盘大集中模式下的角色权限设计
副标题[/!--empirenews.page--]
一、项目背景本项目是一个关于OA系统升级改造的ToG项目,涉及3000+单位5万用户,横跨市–区县–镇街3层行政区划。各单位之间业务信息交流频繁,业务上经常需要跨单位、跨部门的协同运作。在系统层面,所有单位均在同一租户下,由基础平台负责各业务子系统权限的统一管理。 二、从组织架构看权限的管理模式回顾整个项目,在进行权限设计之前,必需先了解现场的组织架构。因为RBAC模型主要描述的只是用户–角色–权限之间的关系,而决定RBAC模型复杂程度的是业务上的组织架构。 当组织架构达到一定量级的复杂程度后,根据系统部署的方式或管理理念的不同,会分化出不同的权限管理模式,不同的管理模式对系统权限设计也会有不一样的要求。 下面以全市组织架构为例进行说明: 图1 组织架构层级 1. 组织架构说明以上的组织架构主要分为5种层级:
2. 不同组织架构下的权限模型1)基础权限模型 适用场景:场景一 、场景二 基础权限模型适用于单个单位或组织架构相对扁平的企业。系统完全交付后,通过系统管理员的管理即可满足日常角色与权限的维护,各模块业务数据需求明确,是基本的RBAC模型,其业务管理模式如下:
因此,在这种模式下,系统管理经常兼任单位管理员的管理工作,对权限下放的设计要求不高,其角色树如图2所示。 图2 系统管理员≥单位管理员>业务角色 RBAC模型已经定义了“用户–角色–权限”的授权模式,将系统功能拆分为操作权限与数据权限两个维度进行设计。在此框架下设计的权限模型,不管面向的企业对象如何变化,操作权限的设计思路都是不变的,仅需要对数据权限进行改造,即可满足企业的业务使用。 2)多单位管理模型 适用场景:场景三 、场景四 多单位管理模型适用于大中型单位组织架构,单位之间存在上下级关系且业务交流频繁。由于单位间的管理关系,需要横向或纵向的跨单位数据管理,考验权限对数据灵活配置的能力。 因此,大型系统的RBAC管理过程更为复杂,此时简单的RBAC已不能满足系统的访问控制分级管理的要求。尤其在信息系统中存储和管理大量企业单位的敏感数据,一旦这些数据被泄露或窃取,会给带来难以弥补的损失。 另外在企业运营中经常需要对组织架构和人员工作进行调整,相应地需要修改系统中访问控制主体和权限的关系。而系统管理员由于不了解调整内容导致授权工作滞后,即使修改后也不一定能准确反映调整状态,常需要多次补充修改,导致授权效率较低,影响正常的业务工作进程。 为了解决信息系统中访问控制管理的问题,适当简化授权工作量,提高权限管理效率,需要建立基于角色的多单位授权管理模型,其业务管理模式如下:
在此模式下,系统管理员不再兼任单位管理员工作,需要实现权限的多级下放。 在场景四中,由于业务上对单位群进行划分,需要系统管理员或特定区域管理员管理单位集合或超出单位管理员权限的特殊角色,角色树较场景三更加复杂,具体角色树如图3所示。 图3 系统管理员≥区域管理员>单位管理员>业务角色 3)多区域管理模型 适用场景:场景五 多区域管理模式是多单位管理模型的拓展。 首先是对数据管理的要求更高,除了系统、单位、科室、个人的层级外,需要新增区域层级以管理某一范围内的数据信息。 其次,由于涉及多层级的权限管理,在满足多级权限下放需求,需要充分考虑不同层级角色对某一角色的管理问题、小权限角色对大权限角色的管理问题等。例如:区域管理与单位管理对某业务角色进行管理时,由于自身权限不同,可下放给此角色的权限也不相同。 如何避免小权限角色对大权限角色造成影响,需要我们结合业务实际使用情况进行设计。 业务管理模式如下:
在此模式下,系统管理员也不再兼任区域管理员工作,角色树如图4所示。其中角色1-3为区域管理员,角色4-8为单位管理员。 (编辑:青岛站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |