当前位置:2009年第11期 总第119期 > 应用研究
基于角色的访问控制在房地产评估系统中的应用研究
作者:王晓兰[1] 潘郁1 阅读次数:1362
?
1.? 南京工业大学 管理科学与工程学院,南京 210009
?
摘要:以基于角色的访问控制模型(RBAC)为基础,通过分析房地产评估系统用户和功能的特征,提出改进的RBAC模型,引入粗权限和细权限的思想对用户进行分类;并且在授权管理中引入层层负责的管理模式,使访问控制的管理更加灵活方便。本文阐述了改进模型的设计及实现。该改进的RBAC模型在一个房地产评估系统的实际应用效果较好。
关键词:角色,权限,访问控制,房地产评估
引言
??? 随着我国房地产业的蓬勃发展,房地产评估的自动化、网络化、信息化日益加深,房地产评估系统的功能越来越全面化,所面向的用户数量也越来越多。在面对功能模块复杂,用户数量繁多的情况下,建立一个合理、灵活的访问控制模型成为不可忽视的重要问题。传统的访问控制模型有自主访问控制DAC和强制访问控制MAC,但由于它们对权限的控制不是太弱就是太强等缺点,已经不能适应系统的需求。从而出现了一种新的模型:基于角色的访问控制RBAC(Role-Based Access Control),其采用角色的概念进行管理,角色关系具有相对的稳定性和易维护性,实现了用户和资源的分离,减少了权限管理的负担和代价。本文通过对房地产评估系统的用户和功能的特征分析,对基于角色的访问控制模型进行了改进,使其更加适合房地产评估系统的需求。
1 基于角色的访问控制原型
??? 20 世纪90 年代以来出现的一种基于角色的访问控制RBAC技术有效地克服了传统访问控制技术中存在的不足之处,借助于角色这个主体,将原来成千上万的用户抽象成角色,用户通过角色访问资源,建立这样一种映射关系,大大提高了管理的效率,减少授权管理的复杂性,降低管理开销,而且还能为管理员提供一个比较好的实现安全政策的环境。RBAC模型作为目前最为广泛接受的权限模型,它的主要思想是:权限是和角色相联系的,而用户则被指定到相应的角色作为其成员,这样就使权限的管理大大简化了。
??? RBAC参考模型(见图1)由3 部分实体组成:用户、角色和权限。用户是对资源对象进行操作的主体;资源是能够被用户访问的具体对象,如表格、记录、程序等;操作是以某种方式获取某种资源的属性和状态或者改变这种资源的属性和状态行为;权限是用户对受保护资源操作的许可;角色是一系列操作权限的集合,也可以看作是若干具有相同身份的用户集合,角色构成了用户和被访问资源之间的桥梁。
图1 RBAC参考模型
?
??? 在RBAC中,用户和角色之间是多对多的映射关系,一个用户可以被赋予多个角色,一个角色也可以赋予多个用户。同样,角色和权限间也是多对多的映射关系。一个系统用户可以通过其具有的角色权限来判断其可以访问的系统资源和对该资源进行的操作,这是RBAC 的基本工作原理。
2 房地产评估系统中改进的RBAC模型
2.1 房地产评估系统中用户和数据功能模块的特点
??? 房地产评估系统有其自身的用户和数据功能模块的特点,因此,在设计其访问控制模型时,首先必须分析这些特点。
??? 房地产评估系统面向的用户主要有房地产评估的内部用户和银行用户。这两大用户组中又可以分为若干小类,如内部用户可分为评估技术总监,评估员,一般工作人员等。这些用户都有可能面临以下问题,用户调动频繁,如招聘、解聘、借调;用户岗位变化频繁,如任免、升迁、定期换岗等;用户工作职能变化频繁,如增加新业务功能。
??? 房地产评估过程是一个复杂的流程,牵涉到众多的影响因素,即评估过程涉及到大量的数据模块;同时房地产评估过程又是一个需要各个用户协同工作的过程,不同的用户在工作中处理的数据模块不同。因此,房地产评估系统处理的数据量大,评估过程涉及人员多,流程复杂。
2.2改进的RABC模型
??? 结合房地产评估系统的特点,在RBAC原型的基础之上进行了改进。由于用户是分为两大组,所以在RBAC原有的3个实体中,增加一个用户组实体,即用户、角色、用户组、权限。相应的,权限就分为了粗权限和细权限。粗权限表示同一用户组所具有的共同权限,如银行用户类中的职员都具有查看评估结果的权限。细权限表示具体的对象所具有的特定的权限,如内部用户中的评估技术总监具有码表维护的权限。
??? 同时,RBAC中的授权是依靠系统管理员对各用户进行集中式角色授权,这会造成系统管理员的繁重负担。本系统中,考虑到已经在原型中添加了用户组这个实体,因此,引入层层授权的思想。即系统管理员只需对两大用户组的管理员进行角色授权,而这两大用户组的管理员就可以对下面一层的用户再进行角色授权。这样的授权方式灵活,且大大减轻了系统管理员的负担。
3 改进的RBAC模型在房地产评估系统中的实现
??? 基于前文所述的针对房地产评估系统的特点改进的RBAC模型,下文将阐述在.NET环境下,对改进的RBAC模型在系统中的实现。主要从三方面来说明具体实现过程:数据库表关系图、具体访问控制流程、用户和角色的创建及授权。
3.1 数据库表关系图
??? 数据库的设计主要考虑如何组织基于角色访问控制模型中各元素之间的关系,保证数据一致性。由于基于角色的权限管理系统模块主要研究用户、角色、功能以及它们之间的关系,根据改进的RBAC模型,我们将其相应的在数据库中用以下十一个表来保存:用户信息表、角色信息表、用户角色表、用户组信息表、用户组角色表、用户用户组表、操作权限表、角色权限信息表、功能模块信息表、模块权限表。
?
图2 数据库表关系
?
??? 上面的数据关系图不仅表明这十一个数据表之间的关系,而且还可以看出,该图由三个子关系构成,分别看作是用户、角色以及资源权限关系表。权限分配是对于一个特定资源的实例及对该实例的操作行为所构成。例如:功能模块是一个资源,对于该资源,有新建、修改、删除、禁用、查看等操作,所以就形成这些权限:创建子模块、修改模块、删除模块、禁用模块以及查看模块等。在上面数据关系第三层是资源权限,在本文中主要是研究系统功能模块与权限之间的关系。
3.2访问控制模块的实现
??? 本文中改进的RBAC模型实现的具体流程如图3所示。用户在登录系统的时候,先判断该用户所属的用户组,即判断用户具备的粗角色,根据角色再登录进入相应的模块,同时,根据所属的用户组,在该组中再次取出用户具备的细角色,根据该角色对数据进行权限控制。在这里,一个用户的权限来自多方面的,一方面是用户本身得到的权限,另一方面是用户扮演角色的权限,并且这些权限可能来自不同的用户授予的。在整个访问控制流程中,通过这样层层解码,最终实现用户对一个具体模块具体的资源的访问控制。这样做便于管理维护,即使以后增加了新的模块,只要再增加很少的定义就可以完成整个的权限控制。
?
图3 访问权限流程图
?
??? 用户登录成功后,系统将用户拥有的角色列表保存在Session 中,用户进入系统主界面时,左框架树状结构初始化,系统读取Session 中保存的用户角色权限列表,根据列表包含的角色分析出用户可以访问的子系统和模块,然后将这些子系统和模块信息组成树状结构显示出来。右框架在进入系统时会装载一个固定页面,当点击左框架中的具体模块功能时,则会显示相应的信息。以下是本房地产评估系统中评估内部用户中的评估员的登陆后的截图。图4中左框架中的功能模块是用户具有访问权限的模块,右侧显示的是左侧功能中的我的桌面的模块。
?
图4 评估员登陆后读取的功能模块界面
?
3.3 用户、角色的创建及授权
??? 本文设计的房地产评估系统默认一个超级系统管理员,他拥有最高权限,可以对整个系统资源进行管理。超级系统管理员可以创建角色和用户并指明下一级管理员。由于本文引入层层管理的思想,因此,超级系统管理员只需创建两大用户组的管理员,即评估系统内部管理员和银行管理员。然后,被授权的管理员就可以再授权下一级别的用户。这种授权方式与系统用户的组织结构相一致,符合管理层的管理模式。下面以用户授权为例描述实现过程,如图5所示。
?
图5用户授权流程图
?
??? 角色的授权过程与用户授权类似。限于篇幅,其具体的功能实现不逐一介绍了。
4 结语
??? RBAC是一种有效的权限管理技术,具有灵活、稳定、易维护等优势。本文通过分析房地产评估系统用户和功能的特点,提出改进的RBAC模型,该模型引入粗角色和细角色,减少系统的复杂性;并且在用户和角色授权中引入层层授权的思想,实现了分级管理,简化了用户权限管理,大大减轻了系统管理员的负担,同时也使得授权模式更加灵活。改进的RBAC模型在一个房地产评估系统中应用效果较好,对今后相似的系统权限管理有一定的参考价值。
参考文献
[1] 李晓燕,管群,.NET下基于角色的访问控制的应用[J],计算机安全,2008,1。
[2] 夏明超,吴俊勇,吴命利,基于角色访问控制在电力监控系统中的应用[J],电力系统及其自动化学报,2008,20(2)。
[3] 王先平,赖俊宇,万兵,基于角色与用户的访问安全设计与实现[J],微计算机信息,2008,24(2-3)。
[4] Ferraiolo D F, Sandhu R,Gavrila S. Proposed NIST standard for role-based access control[J]. ACM Transactions on Information and System Security,2001,4(3):224-274.


[1]资助基金:国家建设部软科学基金(04-2-207) 、南京工业大学优秀学术团队建设基金、南京工业大学精品课程建设基金资助项目
作者简介:王晓兰 研究生,研究方向:电子商务与管理信息系统.;潘郁 男,江苏南通人,教授,博士,研究方向:商务智能与计算管理。
?

《电子商务》杂志社版权所有 未经本刊书面同意请勿转载

Copyright ? 2003-2006 eb-online.cn all reserved. 京ICP备10010770号-6