基于RBAC模式的权限系统设计

一、背景

近几年安全事故频发,人为泄露商业数据、人为删库、盗取公司用户信息、优惠券发放额度失误等,带了一定经济损失,甚至面临法律上的制裁风险,以及商业信誉的严重损害。之前公司的权限系统,权限直接分配到账号,部分权限甚至直接写死到代码里,转岗、换部门等情况权限都不会自动检测和清理,外部审计发现存在大量不合规问题,另外权限申请过程随意、缺少必要的审核,依赖人工配置导致效率非常低。在此背景下,亟需搭建一套符合审计要求、能够高效协作的权限平台。

二、权限模型

随着企业或系统规模的发展,权限管理一般会经历一个演变过程:早期将权限与单个用户账号相关联,即访问控制列表模式(Access Control List, 简称ACL模式),详见图1;当系统越来越庞大,越来越复杂,ACL模式授权效率低、安全风险高的问题暴露,进入第二阶段基于角色的访问控制(Role-Based Access Control,简称RBAC模式),详见图2。


图1 基于ACL模式的权限控制


图2 基于RBAC模式的权限控制

原系统即为第一种,本次重新搭建的是后一种,基于角色的权限系统设计,控制范围为功能权限,不包含数据权限。

二、系统框架

原来的权限系统,最大的问题是权限管控混乱、不符合审计要求,其次是管理效率低、浪费人力。新的权限系统主要通过以下措施解决这两个问题:

1、授权方式标准化:安全团队梳理出权限与角色的标准对应关系,并要求所有系统接入标准权限系统服务,减少各系统各自管理权限情况,同时系统数据接入标准的审计日志平台

2、非标准权限申请流程化:单个账号可在工单系统申请加入角色,或申请某个特定权限,发起申请后由上级领导、系统管理员、信息安全团队审核,申请记录作为审计依据

3、通过角色管理权限,角色可绑定组织、岗位,从而实现人员的权限随着入离调转可自动赋权、自动清权,同时也提高配置效率、减少人工修改配置的工作量

图3 权限系统整体架构

三、具体方案

待补充

四、展望

基于RBAC模式的权限控制,主要适用于功能级权限管理。随着公司业务发展,早期各系统自行管控的数据权限也必然无法满足效率和合规审计需求,需要一个统一服务平台,不仅要考虑是否有某个权限资源的访问权限,还要支持设置用户能访问权限资源中的哪些维度、指标以及维值的范围,以及数据权限资源与资源之间的关系、角色与角色之间的关系,可参考美团技术团队的将军令:数据安全平台建设实践

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容