2.3 AJAX
Ajax指异步JavaScript及XML(Asynchronous JavaScript And XML)。
Ajax不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。通过Ajax,JavaScript可使用XMLHttpRequest对象对象来直接与服务器进行通信。通过这个对象,JavaScript可在不重载页面的情况与Web服务器交换数据。Ajax在浏览器与Web服务器之间使用异步数据传输(HTTP请求),这样就可使网页从服务器请求少量的信息,而不是整个页面信息。
3.系统分析与设计
3.1系统需求分析
通用权限系统核心是能被其他的信息管理系统所复用,能满足大多管理系统的需求。在了解中小型应用系统关于架构和功能的需求基础上,通用权限系统的需求分析如下:
(1)系统使用操作要简易明了。
(2)系统要能减少工作量和缩短开发周期。
(3)能够很好的支持应用功能的扩展和修改。
系统的主要人员分为:超级用户和普通用户。超级用户登陆后通过用户管理、角色管理以及权限管理等添加普通用户,然后对普通用户角色的分配。普通用户则获取到被分配角色在应用模块中的权限,从而对应用模块资源进行查看、修改等权限操作。
系统模块主要划分为用户资料管理模块、角色管理模块(包含权限管理)、应用管理模块(资源模块)。
3.2系统流程图设计
图2 系统流程图
如图2所示,权限管理系统首先需要管理员新增用户后,然后为用户设定对应角色,如果这个角色是已经设定好的,则设定完成。如果没有所需角色或者需要修改角色时,就需要添加或者修改角色,然后为角色设定在应用模块的权限即可。
3.3系统功能模块设计
(1)用户资料管理模块
用户资料模块可以新增用户,由管理员操作,新增用户可以是超级用户和普通用户。其中超级用户默认拥有所有权限,而普通用户可以根据需求被赋予角色。
用户资料模块包括用户信息和用户资料两个子模块,其中用户信息中所包含的是:用户名、密码、用户类型及角色。而用户资料则是包含用户的详细信息,如:编号、名字、部门、职称、电话、地址等等。
(2)角色管理模块
角色管理包括新增查看角色、添加角色应用和设定角色权限。其中添加角色应用就是设定该角色在某个应用子系统(资源系统)中可以拥有权限,而设定角色权限则是该角色在这个应用子系统中可以拥有哪些权限。
角色名称可以根据实际情况进行修改、增加和删除,相应权限也可以进行修改。
(3)应用管理模块
应用管理模块包括应用列表管理和应用模块管理。其中应用列表管理可以添加应用系统,其中包括系统的名称、介绍等等。而应用模块管理则是把已添加的应用系统再进行细划分,就是给其附加各种需要权限管理的资源模块。
这样的模块设计有利于系统应用的扩展和移植。
4.数据库设计
数据库结构设计的好坏将直接对应用系统的效率以及实现效果产生的影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。
4.1数据库E-R图
数据库设计主要有四个实体即用户、角色、权限、应用系统。而其中的关系则是用户拥有角色,角色拥有权限,权限则是用来管理资源。这正是基于角色的访问控制的核心所在。
图3 数据库E-R图
4.2数据库表结构设计
通用权限系统核心是用户、角色、资源。所以用户资料和角色、权限的数据分别需要保存到表中,并且用户和角色,角色和权限之间需要关联起来。当用户选择角色时,调用角色表(sys_Roles)中的信息。而如果要给角色修改权限的话,就需要调用角色应用表(sys_RoleApplication)、应用表(sys_Applications)和角色应用权限表(sys_RolePermission)。其中应用表则是存放应用系统ID等信息的,可以有多个应用子系统,这样方便系统的扩展。为适应关系型数据库的要求,规范数据设计,将对象在数据库中的关系如图4所示。 ASP.NET通用权限管理系统设计+文献综述(3):http://www.youerw.com/jisuanji/lunwen_3752.html