基于RBAC的高校OA系统访问控制研究

时间:2022-10-21 11:23:18

基于RBAC的高校OA系统访问控制研究

摘要:通过对访问控制技术的分析,将基于角色的访问控制机制引入高校OA系统设计,大大降低了OA系统安全管理的复杂度,提高了OA系统权限分配的安全性和灵活度。

关键词:RBAC;访问控制;信息系统安全;OA系统

中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)36-10585-02

Research on the Access Control of Academic OA System Base on RBAC

ZENG Guang-qing

(Information Technology Department,Fujian College of Financial Technology, Fuzhou 350007, China)

Abstract: Through analyzing the access control technology, the role-based access control mechanism in academic OA system was designed, and the complexity of safety management of OA system was greatly reduced,and the security and the flexibility of jurisdiction assignment of OA system was improved.

Key words: RBAC; access control; information system security; OA system

近几年来,随着我国高等教育的快速发展,办公自动化(OA)系统在高校的应用日益普及,其安全性问题也成为该领域研究的热点课题。访问控制是OA系统安全性的核心,它通过对关键资源的访问权限进行限制,只允许拥有适当权限的用户才能创建、修改和删除特定的数据库对象及能够访问的数据,防止非法用户进入系统或合法用户对系统资源的非法使用,保障系统的安全性。

1 传统的访问控制技术缺陷

作为一种针对越权使用资源的重要防御措施,访问控制一般分为两种,一种是直接给用户授予权限;另一种是先将权限授予角色,再将角色分配给用户。传统的访问控制技术属于第一种,它又进一步分为自主访问控制(Discretionary Access Control,DAC)和强制访问控制(Mandatory Access Control,MAC)。其中DAC由管理员设置访问控制表,规定用户操作的权限;而MAC是先对系统内的用户和数据对象分别授予安全级别,再根据用户、数据对象之间的安全级别关系来限定用户的操作权限。

DAC和MAC这两种安全策略虽然可以在一定程度上解决系统的安全问题,但是,由于传统的访问控制技术把用户和访问权限直接关联起来,一旦发生人事及职务变动或权力重新分配,就要逐一从头设置用户的权限,这就大大增加了管理员的重复工作。而且,随着OA系统中用户可访问的资源结构越来越复杂,规模日益扩大,合法用户的量也会越来越庞大,使用这两种访问控制形式会使系统的安全管理变得很复杂,大大增加了管理难度。

由于角色、权限之间的变化比角色、用户关系之间的变化相对要慢得多,引入基于角色的访问控制机制可以大大减小授权管理的复杂性,降低管理开销。

2 RBAC模型

基于角色的访问控制(Role-based Access Control,RBAC),因其具有较高的可扩展性和灵活性,是目前公认的解决统一资源访问控制的有效方法,在分布式系统、数据库系统及各种操作系统中都得到广泛的应用,它可以有效地弥补传统访问控制技术的不足,减少系统安全管理的复杂度,降低管理的难度,为管理员提供了更加友好的安全策略管理环境。

RBAC最早由美国国家标准与技术研究院(NIST)的David Ferraiolo和Rick Kuhn在1992年提出。它的基本思想是:在软件系统中定义各种角色,给不同角色分配访问系统资源的权限,当用户要访问某一类资源时,要给该用户授权具有可访问此资源的相应角色,用户与资源之间不建立直接关系,而是通过角色建立间接联系。角色与用户之间是多对多的对应关系,一个用户经管理员授权而拥有多个角色,相应地同一角色也可以授权给多个用户。

1996年R.S.Sandhu等人正式提出了RBAC96参考模型(如图1所示),它对RBAC进一步的深入研究奠定了基础。这个模型由基本模型RBAC0(Core RBAC)、角色分级模型RBAC1(Hierarchal RBAC)、角色限制模型RBAC2(Constraint RBAC)和统一模型RBAC3(Combines RBAC)四个子模型构成。

RBAC0定义了能构成一个RBAC控制系统最小的元素集合。在RBAC之中,包含用户、角色、目标、操作、许可权五个基本数据元素,权限被赋予角色,而不是用户,当一个角色被指定给一个用户时,此用户就拥有该角色所包含的操作权限。会话是用户与激活的角色集合之间的映射。RBAC0与传统访问控制的差别在于,通过增加一层间接性,带来了灵活性,RBAC1、RBAC2、RBAC3都是在RBAC0上的扩展。

RBAC1引入角色间的继承关系。角色间的继承关系可分为一般继承关系和受限继承关系。一般继承关系只要求角色继承关系是一个绝对偏序关系,允许角色间的多继承,而受限继承关系则进一步要求角色继承关系是一个树结构。

RBAC2模型中添加了责任分离关系。RBAC2的约束规定了当权限被赋予角色时,或角色被赋予用户时,以及当用户在某一时刻激活一个角色时,所应遵循的强制性规则。责任分离包括静态责任分离和动态责任分离。约束与用户、角色、权限三者之间关系共同决定了RBAC2模型中用户的访问许可。

RBAC3包含了RBAC1和RBAC2,既提供了角色间的继承关系,又提供了责任分离关系。

最小特权原则是系统安全的原则之一,它用来限制用户对系统及数据存取所需的最小权限,既保证用户能完成所操作的任务,同时也确保了非法用户或异常操作所造成的最小损失。根据最小特权原则,用户和许可为基本信息,部署在中央服务器上,进行集中管理,这样可以让系统管理员根据各个业务系统的业务安全需求汇总情况,统一进行许可管理,实现最小特权。

3 基于角色的访问控制设计

3.1 系统模型设计

图2给出了OA系统中基于角色的访问控制系统模型。当用户访问系统时,首先要求输入用户名和口令进行身份认证,认证通过后,再到RBAC数据库中读取其角色信息。当这个用户请求某个操作时,首先验证该用户担任的角色是否具有操作权限,若有操作权限,可以授权对系统数据进行操作。用户账号以及用户的角色和相应的权限由应用系统的管理员通过RBAC管理系统输入和分配,管理员对一个用户进行设置后,则该用户的基本信息以及角色、授权信息就写入RBAC数据库。

3.2 数据库设计

图3为RBAC数据库实体关系图。为了实现基于角色的访问控制,这里定义了五张表以实现用户到角色、角色到权限的分配。其中用户信息表记录了用户的基本信息、登陆的验证信息、所属部门和用户是否已经被授权等;角色信息表用于存放系统中所有的角色;用户角色信息表用于给用户赋予角色,角色权限信息表用于指派每个角色的操作权限;用户信息表用于给用户进行角色授权。

3.3 动态授权和动态约束设计

实现基于角色的访问控制的关键是建立用户、角色、权限这三者之间多对多的映射关系,由于这种映射关系具有可更改和可扩充性,所以它能适应动态变化的应用需求。虽然在用户进行访问控制时,其所拥有的权限具有相对的稳定性,但在有的时候,可能出现人员不在岗,其工作需要授权他人处理等特殊情况,这时动态授权机制可用来反映这一需求。具体的实现方法是:使用委托授权模板来实现动态授权功能,增加委托用户角色表(委托人姓名,被委托人姓名,角色集,开始时间,结束时间),通过委托授权模板(委托用户名,被委托用户名,角色)来修改委托用户角色表,该表使用时间区间来限制动态授权的权限的使用次数和有效期,同时委托人信息使这种委托不可以转移,以防止权力滥用而带来的安全隐患。

约束是基于角色的访问控制中重要的安全策略,是对用户执行权限的一些限制,分为静态约束和动态约束。某个用户在系统中可能同时拥有多个角色,但是在某一个工作过程中,要求当他充当其中一个角色的同时不能激活其另一个角色。在系统执行过程中,通过记录历史可以实现这种动态约束。

4 结束语

在高校OA系统应用中,系统的安全性至关重要。基于角色的访问控制机制将用户与访问权限的逻辑分离,可以大大地提高系统的安全性和可靠性,动态授权和动态约束机制又保证了系统的灵活性。

参考文献:

[1] 张晓燕,张素伟.基于RBAC的电子政务权限访问控制模块的设计与实现[J].计算机工程与设计,2007,28(3):680-682.

[2] 揭安全,化志章,薛锦云,等.基于RBAC的高校办公自动化系统设计[J].计算机工程与设计,2009,30(10):2800-2805.

[3] 赵荣山,洪帆.办公自动化系统中基于角色的访问控制机制[J].通信技术,2002(9):89-91.

上一篇:数据空间的数据项研究 下一篇:基于多特征融合的敌对目标识别新方法