摘要
smart系统是一个在语言上采用跨平台的java技术、在框架架构上采用流行的mvc架构、在业务架构中采用
spring的ioc思想和orm技术的一个新型智能在线考试信息管理系统,该系统主要实现了学生在线考试与评
估以及教师对学生在线考试信息的管理和维护。本文设计的系统管理功能模块采用了多用户多角色管理机
制,确保不同的用户登录系统后能够操作属于自己权限范围内的功能。系统功能管理模块主要由用户管理
子模块、角色管理子模块、角色设置管理子模块、权限管理子模块、系统菜单管理子模块、日志管理子模
块和用户登录验证子模块构成。通过对系统功能的各种设置,实现对系统各级用户的角色设置和角色分配
,限制和记录各级用户在系统中的对信息的功能操作,体现了系统权限设置的灵活性、数据操作的安全性
。
关键词:用户;角色;权限;多用户多角色管理
系统功能需求和总体设计
2.1b/s构架
随着internet的发展,采用browser/server模式的系统主要利用internet技术和产品来构筑内部的
internet网络,即所谓的intranet网络,b/s模式已经成为了企业信息系统建设的首选。b/s模式使用方便
,客户端统一采用浏览器,不限制客户平台,可以方便的和其他业务系统连接。其三层3-tier结构(图2
-1b/s三层结构),大大减缓了客户端载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体
成本。wWw.133229.COm它能有效地保护数据平台和管理访问权限,服务器数据也很安全。
smart在线考试系统是为处在不同地点的不同用户提供网上数据操作服务的。使用b/s模式是一次性到位的
开发,能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据库;它能有效地保护
数据平台和管理用户的访问权限,服务器数据也更安全。特别是在采用java这样的跨平台语言开发后,
b/s构架管理软件更方便、快捷、高效。
系统功能需求分析与设计
通过以上系统流程设计,各模块实现了以下的功能:
2.3.1登录验证
功能需求
用户通过输入正确的信息,通过登录验证后,用户应从数据库中获取他在系统中所具有的操作权限,以致
在用户登录后能够看到其在所具有权限范围内的功能模块。
模块划分
用户登录:用户登录系统,为用户获取权限操作,并更新用户信息。
session维护:维护用户登录系统的会话时间。
用户注销:用户登出系统,清空用户在session中的信息,结束用户会话,并更新用户信息。
应用场景
用户进入到登录页面,需要输入相应的用户信息,登录系统后,用户才能够执行相应功能的操作;当系统
修改该用户的登录信息后,则需要再次输入正确的认证信息或者从新刷新session后才能访问到相信系统
功能,同时,当用户注销系统时,也从session中清空相应的会话信息。
2.3.2用户管理
功能需求
系统用户主要包括两种,教师用户和学生用户。教师用户又分为四种不同的用户,如:省级教师用户、市
级教师用户、区县级教师用户、学校级教师用户,并且他们在系统的权限都不相同,系统应提供对这些用
户的区别以及权限控制。如果登录用户具有足够的权限的话,可以对这些用户进行控制管理。用户管理需
实现对这些用户的参数匹配搜索和管理,对用户的管理主要要求实现对这些用户的添加、更新、删除和对
新加用户的激活等相关功能。
模块划分
搜索功能:系统管理员可以通过参数匹配来搜索当前系统的用户,将输入的某些参数作为模糊查询的方式
来搜索,并将所查询出来的结果以一种统计的列表方式展现出来。
新增功能:系统管理员可以直接向数据库增加一个新的用户。
更新功能:如果用户具有相应的权限,则对自己或其他用户的资料进行更新。
删除功能:如果用户具有相应的权限,则对自己或其他用户的资料进行删除。
用户角色设置功能:用户可以在编辑其信息时,可以对用户的角色相关联,因为这些角色与系统的功能相
关联的,所有当用户对其所属角色进行关联时,该用户的权限也在发生改变。
强制用户注销:系统管理员可以对当前系统已经登录的用户进行强制性的注销。
应用场景
登录用户如果有以上功能的权限,则该用户可以根据匹配条件搜索,并可以对搜索出的用户进行更新、删
除已经对某些用户的所属角色进行更新。同时也可以向系统添加新的用户,如果所更新的用户已经登录进
了系统,我们还可以将其强制注销。
技术方案
由于系统用户主要分为两大类,并且这些用户中教师和学生的用户量比例比较大,教师用户和学生用户的
权限设定丰富程度相差也比较大,所以在实现用户管理的时候,将用户管理分成两个模块来对其进行相应
的管理,这样在权限控制和用户管理上比较容易实现和控制。
2.3.3 角色管理
功能需求
系统为用户提供不同功能权限的角色对象,用户拥有的功能是由用户拥有的角色对象来确定,一个用户可
以拥有多个角色对象,用户的功能是由这多个角色对象的并集。系统存在多种用户,而这些用户拥有对系
统不同的功能权限就是由他所属的角色对象不同确定的。该功能主要为系统管理员提供来管理用户在系统
中所具有的权限功能,来为这些用户分配他们的权限范围,保证系统的安全。
模块划分
角色搜索:用户可以通过该功能搜索本系统所具有的角色,该功能提供了模糊匹配搜索的搜索功能。
角色管理:通过搜索功能可以搜索出本系统的所有角色,如果权限足够还可以更改这些角色,可以执行以
下操作,添加角色、删除角色、编辑角色。
应用场景
系统管理登录系统后,可以通过以上提供的功能来删除、编辑、添加角色。
技术方案
角色的管理主要采用比较传统方式来实现。
2.3.4 角色设置管理
功能需求
该功能主要为系统管理员提供来管理用户在系统中所具有的权限功能,来为这些用户分配他们的权限范围
,保证系统的安全。
模块划分
搜索功能:该功能主要是搜索当前系统中所具有的角色或用户,主要为角色设置管理提供管理的对象。
角色设置管理:管理员通过搜索功能可以搜索出需要进行管理设置的对象,然后对在这些对象上面进行角
色对象的添加、删除来为他们设置不同的权限范围。
应用场景
系统管理员登录系统后,便可以对用户的权限进行管理设置,为这些用户分配他们所属于的角色对象。
技术方案
角色设置就是对某一个用户进行角色分配,由于用户和角色的对应关系是一对多,而角色和用户的关系也
可以是一对多的关系,所以在用户角色设置的时候采用ajax来对用户和角色设置的数据信息进行提交。
2.3.5 权限设置管理
功能需求
系统的每一个功能我们都把叫做是一个任务(task)并为它分配一个唯一code(taskcode),系统的不同角色
包含了不同的任务,我们为每一个角色设置其包含的任务,这样用户的权限范围就由用户所属的角色确定
了,而角色由角色所属的任务确定。我们这样通过设置角色和任务的关联已经用户和角色的管理来实现权
限的管理。
模块划分
搜索功能:该功能提供了模糊匹配搜索功能,搜索的对象主要包括两个,角色和任务。
权限设置:通过以上的搜索功能的搜索结果来对其进行设置管理操作,通过对任务的角色对象的添加删除
来实现其权限设置。
应用场景
管理员登录系统之后,便可以用该功能来对任务和角色之间的管理进行设置,通过对任务所属角色的添加删除来实现对权限的控制。