论文部分内容阅读
本文以教学管理系统开发项目为背景,重点研究面向对象技术中的设计模式以及基于角色的访问控制(Role-Based Access Control,RBAC)在系统开发中的应用。教学管理系统的目的在于构建一个可复用的、可扩展的,适用于学年制、学年学分制及完全学分制教学管理的基础平台。教学管理系统涵盖了学籍管理、教学计划、培养方案、信息服务等范围。在实际开发过程中,随着业务需求的改变,业务规则、数据处理方面均要发生相应的改变,采用传统软件开发方法将造成系统的不稳定,降低系统的可维护性。而设计模式的使用有助于封装变量和变化,因此本文将面向对象中的设计模式结合到教学管理系统开发过程中来提高系统的灵活性,降低业务需求变化对教学管理系统产生的影响。另一方面,访问控制是系统安全的重要组成部分,它能够保障授权用户在权限范围内获取所需资源,拒绝不合法的访问。虽然在大多数的应用系统中都应用了RBAC模型来建立权限管理模块,但传统RBAC模型只专注于粗粒度系统功能访问控制,细粒度的访问控制大多需要在业务逻辑中编码实现,这就导致了业务逻辑、细粒度访问控制逻辑和访问控制判断逻辑混淆在一起,降低了系统的灵活性和可维护性。本文在传统RBAC模型的基础上提出一种细粒度访问控制模型ERBAC,并将ERBAC与最初应用于Linux操作系统的通用访问控制框架(Generalized framework for access control,GFAC)相结合,提出一种基于ERBAC和GFAC的访问控制框架GFEAC,最后将GFEAC框架应用于教学管理系统中。首先给出了系统的总体功能设计,分析了系统中的参与者及主要用例。然后介绍了系统的体系结构设计及实现策略,详细阐述了几种经典设计模式在系统体系结构实现中的应用。接着提出了一种基于RBAC的细粒度访问控制模型ERBAC,给出ERBAC的形式化描述。并将ERBAC模型与最初应用于Linux操作系统的通用访问控制框架GFAC相结合,提出一种基于ERBAC和GFAC的访问控制框架GFEAC,最后介绍了GFEAC框架在教学管理系统中的应用实现,包括数据表设计及GFEAC框架中三个核心模块的设计实现。