基于双角色权限控制的B/S结构管理信息系统安全机制

2020-06-12 01:54彭思喜
关键词:访问控制功能模块业务流程

彭思喜,彭 鹏

(1.华南农业大学经济管理学院,广东 广州 510642;2.深圳职业技术学院汽车与交通学院,广东 深圳 518055)

0 引言

B/S结构管理信息系统能够有效地克服C/S结构“信息封闭、效率低下和难以协同”的缺点[1].B/S结构管理信息系统具有如下优点[2]:(1)共享性,能够在多部门之间实现有效信息共享和传递;(2)多向性,能够提供各项业务、各个部门、各个环节、各项工作、各类人员、以及各种要素之间信息共享和传递通道;(3)高效性,随着通信技术发展,国家信息高速公路建设,网络带宽越来越高,能够实现全面快速准确可靠的处理;(4)及时性,因特网能够克服时间和空间的限制,能够以最快的速递共享和传递相关信息.因此B/S结构管理信息系统比C/S结构更适应多部门信息化协同管理的需要.

然而由于B/S结构软件体系的开放性,B/S结构管理信息系统存在严重安全隐患,包括病毒入侵、黑客攻击和业务数据的安全访问控制等[3].病毒入侵和黑客攻击可以通过日益成熟的杀毒软件、防火墙技术和入侵检测技术进行防范.而如何在业务流程有序控制的条件下,实现开放网络中业务数据的安全访问控制和灵活授权管理,则成为B/S结构管理信息系统亟需解决的关键问题[4].针对此问题,本文设计了一种基于双角色控制的安全机制来实现的.

1 B/S结构管理信息系统模式及网络安全分析

在B/S结构中,用户界面由www浏览器实现,部分无关紧要业务处理也在浏览器前端实现,主要逻辑业务则由Web服务器处理实现,形成了浏览器、web服务器和数据库三层结构的体系(见图1).第一层:客户层,主要由客户端浏览器组成,客户端电脑需连入网络.第二层:服务层,提供系统管理平台、接口系统、查询统计等功能服务.第三层:数据层,包含系统所需的各种数据库.

图1 B/S结构管理信息系统模式

B/S结构管理信息系统,优点在于它的开放性,客户端无需专门软件,可通过浏览器随时随地方便访问系统,同时也给系统带来严重安全隐患:一者,让病毒入侵和黑客攻击变得容易;二者,让业务数据安全性访问控制变得困难;三者,由于B/S结构的Web服务器一般情况需要24 h不停运转,容易使软硬件设施损坏,甚至造成数据库文件丢失.因此,B/S结构管理信息系统面临不同层次的安全需求,包括物理安全、网络接入安全、网络数据传输安全和业务数据处理安全等.

随着杀毒软件、防火墙技术和入侵检测技术的日益成熟,病毒入侵和黑客攻击能够得到较好的防范.而如何实现业务数据的安全访问控制和授权管理,目前主流的技术是基于角色的访问控制RBAC模型.

2 基于角色的访问控制RBAC模型

如何实现业务数据的访问控制和授权管理,传统方式有自主访问控制(DAC)和强访问控制(MAC)两种技术[5].自主访问控制(DAC)是指用户有权访问自身创建的访问对象(文件、数据表等),并可自主地将该对象的访问权限授予其他用户或者收回其授予的权限.强访问控制(MAC)是指由系统对用户创建的对象统一进行强制性控制,按照系统设定的规则决定用户可访问对象及操作权限,因此存在哪怕对象创建者也无权访问该对象的情况.

自主访问控制(DAC)虽然授权灵活但因“授权”自由传递易引发“授权泄漏”导致非信任用户取得合法权限[6].强访问控制(MAC)能有效地防止“授权泄漏”,但“授权僵化”不能满足业务流程需要[7].因此DAC和MAC在授权管理方面都存在较大缺陷,逐渐被基于角色的访问控制RBAC技术有效替代[8].RBAC在授权管理方面具有灵活、便于管理和策略中立等优点,降低了授权的复杂度和管理成本,因而得到普遍应用,成为当前研究热点[9,10].

RBAC模型(见图2)通过引入“角色”中介实现了权限与用户的逻辑关联.用户根据自身责任和资格被委派角色,并通过角色获得相应的授权信息,既克服了自主访问控制“权限泄漏”问题,也不像MAC那样会限制信息流向[11-12].RBAC模式优点在于不再将用户和权限直接绑定,而是将权限赋予角色,再将角色委派给用户,从而实现灵活的授权管理,在简化授权管理复杂度同时,能够灵活支持企业安全策略,具有高度的扩展性和伸缩性[13].系统管理员根据不同的角色进行权限设置,从而使角色获得相应的权限.角色的产生或取消,由系统管理员根据系统的实际需要决定.登录到系统的用户也可以根据需要动态激活自己所扮演的角色.

图2 基于角色权限访问控制RBAC模型

RBAC模型通过“用户-角色-权限”授权机制实现业务数据的安全访问控制和灵活授权管理,但在模型中可以看到,其没有提供业务流程控制机制[14-15],因而难以应用到有严格业务流程次序操作要求的实体信息系统中.在实现业务数据的安全访问控制和灵活授权管理条件下,如何满足业务流程的严格次序操作要求,成为B/S结构管理信息系统亟需解决的难题.为了尝试解决此难题,下文对RBAC模式进行改进,提出了一种基于双角色的权限控制DRBAC模型.

3 基于双角色的权限控制DRBAC模型

在DRBAC模型(见图3)中,双角色分别为业务角色和权限角色.一方面,所有的用户,都扮演了某一个业务角色;根据用户所扮演的业务角色,控制用户能够访问的功能模块,从而确保业务流程的控制与运行.另一方面,所有业务角色,同时扮演了某一个权限角色,每一个权限角色,对各功能模块都有相应的访问控制权限.不同的用户通过身份认证后,就登录到该用户所扮演的业务角色能够访问的功能模块,同时按照该用户的业务角色所扮演的权限角色对该用户访问的功能模块所具有的权限进行相关的数据操作.相比RBAC模型,DRBAC模型通过“用户-业务角色-功能模块”实现业务流程的控制,同时通过“用户-业务角色-权限角色-功能模块”实现用户权限的授权与管理,在简化授权管理的同时,实现操作顺序的控制.

图3 基于双角色权限控制DRBAC模型

3.1 业务流程控制机制

DRBAC模型通过“用户-业务角色-功能模块”实现业务流程的控制(见图4).首先,所有的用户都扮演了某种特定的业务角色,根据用户扮演的业务角色,控制用户能够访问的功能模块.而所有的功能模块都是根据业务流程进行设计的,各功能模块的逻辑关系也是根据业务流程次序进行设计.系统在读取特定业务角色的功能模块时,会自动依据各功能模块的逻辑关系进行业务流程的控制.

图4 DRBAC模型的业务流程控制

3.2 安全访问控制机制

在实现业务流程控制的基础上,DRBAC模型通过“用户-业务角色-权限角色-功能模块”实现开放网络条件下业务数据的安全访问控制和灵活授权管理(见图5).首先,用户根据自己扮演的业务角色,按照业务流程运行相应的功能模块.其次,系统预先规定了各权限角色对各功能模块的访问控制权限.再次,每一个业务角色都扮演了某一个权限角色,该权限角色规定业务角色对应的功能模块的访问控制权限.因而,业务角色根据自己扮演的权限角色实现了对自己运行的功能模块的权限控制.

图5 DRBAC模型的访问权限控制

4 基于双角色权限控制的安全机制优势分析

(1)授权管理复杂度.DRBAC跟RBAC一样,将访问权限与角色相关联,用户通过自己扮演的角色获得自己的授权信息,摆脱了用户与权限的直接绑定,使得用户和权限相分离,用户职能的变动,不会产生授权操作,只需要重新设置用户角色就可以实现用户权限变更,从而使得授权管理变得简单高效,降低了授权管理的复杂度和管理成本.

(2)业务流程适应性.DRBAC通过“用户-业务角色-功能模块”实现业务流程的控制,根据用户扮演业务角色,用户登录到业务角色对应的功能模块特定界面,并按照业务流程需要进行特定操作,实现了业务流程的适应性和多部门多用户间的业务协同.

(3)访问控制安全性.DRBAC通过业务角色对应的权限角色获得用户授权信息,根据授权信息实现用户对业务角色对应的功能模块的访问控制,从而保证了业务数据的安全性,同时避免“授权泄漏”问题的产生.

表1 DRBAC与主流访问控制技术比较

5 结束语

B/S结构管理信息系统能够有效地克服C/S结构“信息封闭、效率低下和难以协同”的缺点,比C/S结构更适应多部门信息化协同的需要,但因为B/S结构的开放性,导致存在严重安全隐患.如何在开放网络和业务流程优化有序的限制下,实现业务数据的安全访问控制和灵活授权管理,是B/S结构管理信息系统安全机制的关键所在.传统的DAC和MAC技术因为授权管理方面的缺陷逐渐被RBAC技术替代.RBAC通过“用户-角色-权限”授权机制实现了业务数据的安全访问控制和灵活授权管理,但RBAC没有提供业务流程控制机制,因而难以应用到有严格的业务流程次序操序要求的实体信息系统.基于对RBAC模型的改进,本文设计了一种“基于双角色”的权限授权机制,在实现业务数据的安全访问控制和灵活授权管理的同时,提供了一种操作顺序控制机制,能够较好地适应具有严格操作次序要求的B/S结构实体信息系统.

猜你喜欢
访问控制功能模块业务流程
一种跨策略域的林业资源访问控制模型设计
航天企业基于信息化的业务流程体系构建方法研究
ERP系统在企业财务管理和业务流程管理中的应用
云的访问控制研究
基于质量管理体系为基础的核心业务流程优化
云计算访问控制技术研究综述
商业模式是新媒体的核心
基于ASP.NET标准的采购管理系统研究
高校二手交易网络平台功能及技术框架分析与设计
医院HIS医疗业务流程设计与管理