论文部分内容阅读
随着国内高校信息化建设的逐步推进,校园用户对信息安全的需求越来越重视。由于多年来,使用J2EE体系结构实施高校信息系统建设成为高校信息化建设的重要手段之一,因此J2EE本身提供的安全访问控制技术越来越多地被广大研究人员所重视。其中基于角色访问控制(Role-Based Access Control,RBAC)技术为企业级应用的安全控制做出了不可替代的作用。但是,传统J2EE架构的安全访问控制技术并不完美,在特定条件下,其存在的某些缺陷并不能完美的体现出J2EE与RBAC技术结合的优势。因此,本文将研究工作的目标锁定在为传统J2EE减负,同时完善其安全访问控制技术,建立一种轻量级的J2EE安全Web架构。本文首先研究了传统J2EE的体系结构优缺点,指出其体系结构的优势主要体现在EJB的出现使得组件程序的开发更加完善;其高可重用性、可移植性大大简化了应用的开发。缺点则体现在:EJB(Enterprise Java Bean)的重量级使得对Web服务器的要求较高;复杂的EJB API如果使用不当,可能导致应用系统的总体性能下降。其次,研究了J2EE的安全机制,尤其是J2EE认证与授权的概念及JAAS(Java Authentication and Authorization Service)的工作机制及其优缺点。指出良好的J2EE安全基础设施在概念上为应用系统的安全访问控制技术的实施提供了强有力的保证。而实际操作上,开发人员必须对J2EE安全访问控制机制进行优化。尤其是在J2EE架构下优化传统RBAC模型来部署实施可插拔、易扩展且属于轻量级的安全Web架构。接着,本文在前面研究的基础上提出重组Struts、Spring、Hibernate三种开源框架,以Sping的反转控制与面向方面编程技术管理Struts的动作及Hibernate的数据库操作,构建一款满足传统J2EE框架理论、轻量级、易部署、可插拔、代码利用率较高的J2EE框架。同时,为保证该轻量级框架对安全访问控制技术的良好支持,提出以Spring Acegi+JA-SIG CAS3.0构建单点登陆统一身份认证及授权子系统。其中CAS3.0负责搭建以数据库为数据源的单点登录统一身份认证模块;Spring Acegi用来实现可插拔的动态细粒度授权模块;二者相互合作,使应用系统在入口级别便对用户身份进行认证,使其以最小权限的原则获取相应的资源访问,保护系统的安全性。最后,本文以开发高校政务公开评价系统为背景,对本文提出的研究成果即基于J2EE轻量级框架的安全Web架构进行了具体实现及应用。重点介绍后台管理子系统中的数据库及静态业务对象的设计、安全控制模块(RBAC模块)及系统管理模块的实现。提出将资源概念引入传统RBAC模型中,实现一种基于数据库的动态细粒度RBAC控制。并在文章后面对实现效果进行了详细展示。