基于角色的用户权限授权系统的研究

时间:2022-04-26 02:29:09

基于角色的用户权限授权系统的研究

摘要:针对管理信息系统中,业务需求的不断变化、系统功能的不断增加等问题,结合企业用户流动性大的现状,分析阐述了用户、角色、菜单权限的关系,设计了基于角色的用户权限授权系统。系统包括用户、角色、菜单权限的增删改查,以及为用户分配角色,为角色关联菜单等功能。系统规范了用户、角色、菜单权限的管理,提高了用户授权的易用性。

关键词:角色;菜单;用户授权

中图分类号:TP319文献标识码:A文章编号:1009-3044(2012)20-4797-03

Research of Role-based User Permissions Authorized System

WU Xi

(Jiangsu Institute of Architectural Technology, Xuzhou 221000, China)

Abstract: For management information systems, changing business requirements, increasing system functionalities and other issues, com bined with the status of the mobility of users, the research analyzes and discusses the permission of users, roles and menus, designs the role-based user permissions authorized system. The system consists of insert, delete, update and query of users, roles, menu permissions, as sign roles to users and context menu for the role. The system standards the management of users, roles and menu permissions, improves the usability of user authorization.

Key words: role; menu; user authorization

随着信息技术的发展、软件开发方法的不断深入以及网络技术的兴起,为提高企业的综合竞争力,企业往往会根据自身需求建设信息系统[1]。企业业务需求的不断变化,要求系统功能不断增加,系统需要快速为用户分配新增功能权限。企业不断扩大,人员流动性增加,系统需要快速为新增用户分配权限,调整用户权限等[2]。因此,考虑设计并实现基于角色的用户权限授权系统。

1主要功能设计

基于角色的用户权限授权系统主要包括:用户管理、角色管理、菜单管理。通过为用户分配角色,为角色授权菜单权限,实现基于角色的用户权限管理。

其中用户与角色是多对多的关系,即用户可以拥有多个角色,一个角色也可以授予多个用户。例如:用户A既有仓库出货员的角色,又有仓库盘点员的角色;仓库盘点员这个角色除了被赋予给A,同时也可以赋予给B。角色与菜单权限也是多对多的关系,即一个角色可以拥有多个菜单权限,一个菜单权限也可以被多个角色拥有。例如:仓库出货员既拥有增加出库记录的菜单权限,又有查询出库记录的菜单权限;查询出库记录的菜单权限既被仓库管理员拥有,也被仓库盘点员拥有。具体关系如图1所示。

建立了用户、角色、菜单之间的关系后,当系统新增用户时,系统管理员直接在系统中为该用户授予某个或某几个角色即可,而不需要考虑该用户在系统中需要哪些菜单权限。例如,当用户A作为仓库出货员工作时,系统管理员只需要为A用户授予仓库出货员角色,而不需要再考虑仓库出货员具体要有哪些菜单权限了。

建立了用户、角色、菜单之间的关系后,当系统新增功能时,开发人员直接在系统中将新增的功能分配给一个或多个角色,而不需要考虑新增的功能需要分配给哪些用户。例如,当新增了盘点结果打印的功能,开发人员只需将这个功能对应的菜单权限分配给仓库盘点员角色即可,可不需要考虑为哪些人分配这个功能权限。

基于角色的用户权限授权系统能够更好地区分系统管理员和开发人员的职责。系统管理员负责用户管理、角色管理、为用户分配角色。开发人员负责开发系统功能,将功能分配给对应的角色。通过该系统,系统管理员和开发人员能够各司其责,避免了工作交叉带来的混乱,提高了工作效率。

2主要技术实现

2.1系统总体架构

基于角色的用户权限授权系统采用B/S模式(浏览器/服务器模式)。B/S模式的系统,用户使用更加方便、快捷、高效,开发人员维护和升级更加简单[3]。系统总体架构如图2所示。

2.2开发工具的选择

基于角色的用户权限授权系统采用PHP技术+Mysql数据库+Tomcat应用服务器的开发运行模式。

PHP是被广泛使用的嵌入式脚本语言,特别适合Web开发。其语法非常接近C、Java和Perl,容易学习,并可跨平台运行。PHP支持绝大多数的数据库,支持各种Internet协议,还可以通过API进行扩展。[4]

Mysql作为PHP的最佳拍档,是广受欢迎的SQL数据库管理系统,它免费、快速,并可跨平台运行,支持多线程、多用户、重负载的性能要求,是Web应用系统理想的选择。[4]

Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,是目前比较流行的Web应用服务器。[5]

2.3各子模块介绍

上一篇:基于本体驱动的网格资源发现模拟实验 下一篇:疏附历史名人之麻赫默德·喀什噶里