一种基于struts框架的rbac实现(1)

一种基于struts框架的rbac实现(1)

ID:30620985

大小:18.61 KB

页数:7页

时间:2019-01-01

一种基于struts框架的rbac实现(1)_第1页
一种基于struts框架的rbac实现(1)_第2页
一种基于struts框架的rbac实现(1)_第3页
一种基于struts框架的rbac实现(1)_第4页
一种基于struts框架的rbac实现(1)_第5页
资源描述:

《一种基于struts框架的rbac实现(1)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、从本学科出发,应着重选对国民经济具有一定实用价值和理论意义的课题。课题具有先进性,便于研究生提出新见解,特别是博士生必须有创新性的成果一种基于Struts框架的RBAC实现(1)摘要本文通过对访问控制理论的研究以及对其实现技术的分析,提出了一种基于Struts框架的RBAC实现方案。该方案在权限审查时具有相对较少的数据库访问次数,并且实现了权限审查的集中管理,降低了系统访问控制的复杂度,提高了系统的可维护性。关键字RBAC;Struts;Action;访问控制1引言基于角色访问控制(role-basedaccesscontrol,RBAC)是

2、目前较为成熟的安全访问控制模型,它灵活地解决了权限管理、资源管理及权限审查问题,非常适合基于Web的信息系统。RBAC模型从理论上基本解决了系统用户访问控制的问题,但从技术实现的角度来看,不同的RBAC实现,对系统的开发及运行效率将有不同影响。本文结合Struts框架良好的MVC设计模式和RBAC灵活的权限管理的特点,提出一个基于Struts框架的RBAC的实现方案。方案较好地实现了RBAC模型,并实现了业务层与逻辑层的分离,具有较好的应用效果。2RBAC的基本原理RBAC模型引入了“角色”的概念。所谓“角色”就是一个或一群用户在系统中可执行

3、的操作的集合,它是一个用户的集合,又是一个授权许可的集合。通过将角色指派给用户,为角色赋予权限的方式,使用户和权限通过角色间接相联系。RBAC基本模型如图1所示。图1RBAC基本模型课题份量和难易程度要恰当,博士生能在二年内作出结果,硕士生能在一年内作出结果,特别是对实验条件等要有恰当的估计。从本学科出发,应着重选对国民经济具有一定实用价值和理论意义的课题。课题具有先进性,便于研究生提出新见解,特别是博士生必须有创新性的成果在RBAC中,用户与角色之间、角色与权限之间都是多对多的关系。会话是一个用户对多个角色的映射,此时的用户权限可以为激活角

4、色权限的并集。RBAC对资源授权管理过程分为两个部分,首先实现访问权限与角色相关联,然后再实现角色与用户相关联,从而实现了用户与访问权限的逻辑分离。3Struts简介传统的以JSP页面为核心的开发模式由于表示逻辑和业务逻辑的强耦合,不利于应用扩展和更新,已不能满足应用规模的进一步扩大的需求。MVC设计模式将应用程序分为三个核心部分:模型、视图、控制器,它们各自处理各自的事务,很好地实现表示逻辑和业务逻辑的有机分离。Struts是MVC设计模式的一种实现框架,包含了丰富的标记库和独立于该框架工作的实用程序类,近年来被越来越多地运用于很多大型系统

5、的实现,成为Web应用开发中最为流行的框架之一。简单的Struts体系结构如图2所示。客户端通过浏览器发出请求后,请求被ActionServlet获得,ActionServlet在配置文件中查找有效映射,然后将相应的ActionMapping对象转发给Action处理器对象进行处理。Action处理器对象访问ActionForm中的数据,处理和响应客户的请求,它还调用后台的Bean组件,这些组件封装了具体的业务逻辑。Action处理器对象根据处理结果通知控制器,控制器进行下一步的处理。图Struts体系结构4基于Struts框架的RBAC的实

6、现课题份量和难易程度要恰当,博士生能在二年内作出结果,硕士生能在一年内作出结果,特别是对实验条件等要有恰当的估计。从本学科出发,应着重选对国民经济具有一定实用价值和理论意义的课题。课题具有先进性,便于研究生提出新见解,特别是博士生必须有创新性的成果在基于Struts的信息系统中,“权限”体现为是否拥有对某功能模块的访问资格。当用户需要完成某种功能时,通常都是以发出类似*.do形式的URL来请求。所以,验证的任务就是验证用户是否拥有权限访问URL所指的功能模块。在以往的基于Struts框架的RBAC实现中,基本思想都和上述一致,但就各自的实现方

7、式而言,又各有优缺点。比如,有的实现方式是在每个Action中添加权限验证,这种方式实现简单,但由于权限审查过于分散,导致系统可维护性以及可移植性较差;有的是将URL资源及对应权限关系保存在数据库中,根据用户的角色权限信息进行比对来实施权限审查,这种实现方法灵活,易维护,但每次进行权限审查时必然增加了数据库的访问次数,而且,有时可能多个请求(如新增、保存、删除等)通过同一个Action转发,使用这种方式就需要慎重考虑URL粒度是否太粗的问题。通过对比分析,笔者提出一种新的基于Struts的RBAC的实现。基本原理也是验证用户URL请求的合法性

8、,但具体实现时,考虑了以下几个方面的设计:①RBAC中用户、角色和权限关系的存储设计。②用户的URL请求的设计。③的设计。④权限的验证算法的设计。数据库设计RBAC

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。