专利名称:一种管理信息系统中自定义角色权限的方法
技术领域:
本发明涉及一种计算机应用技术领域,具体地说是一种管理信息系统中自定义角色权限的方法。
背景技术:
近些年来,管理信息系统向着多应用和多用户的放向不断发展,这就在系统安全方面提出了更高的要求,使得信息系统的数据安全越来越受到人们的重视。人们设计了各种权限控制模型,确保只有被授权的用户才能进行某些重要操作或者访问某些敏感的数据和信息,由此便产生了几种典型的用户权限控制模型基于角色的权限设计、基于操作的权限设计和基于角色和操作的权限设计。基于角色的权限设计最常见也是比较简单的方案,采用User、UserRole和Role 三个表实现,通常这种方案设计已经足够,微软设计了该方案的通用做法所有“操作”功能跟“角色”匹配;在程序中根据“角色”对是否具有“操作”权限进行控制。基于操作的权限设计该模式下每一个操作都在数据库中有记录,用户是否有该操作的权限也在数据库中有记录,经过研究发现存在下面的问题如果直接使用这样的设计会导致数据库中的 UserAction表数据量非常大需要进一步优化设计提高效率。
发明内容
本发明的目的是提供一种管理信息系统中自定义角色权限的方法。本发明的目的是按以下方式实现的,具体步骤如下
(1)在系统中创建用户表和权限表,其中,用户表除包括用户名密码必要信息外,还包括用户权限字段,权限表包括角色名称和各种权限定义字段;
(2)为要求进行权限控制的每一个用户操作甚至是每一个事件在权限表中设置一个相应的字段,值为“ 1,,表示有进行此操作的权限,值为“O”则表示没有此操作的权限;
(3)在系统中设置一个权限管理模块,列出要创建的角色的名称并以多选框的形式列出所要进行权限控制的项目,管理员填写角色名称并选择相应的权限提交后生效;
(4)将用户与权限关联起来,创建或注册用户时通过下拉框选择上一步创建的角色名称然后完成创建;
(5)进行某一操作之前,首先要在用户表中查询相应的角色,然后在权限表中查询此角色有无相应的权限;A)若有此权限执行该操作;B)若无此权限终止该操作并发出没有权限的提示。本发明的有益效果是本发明通过设置两个表并通过Role关联起来,实现了自定义角色权限的控制,在粗粒度、细粒度两各方面都能进行有效的应用,从而保证了权限管理范围的广泛性与高度的可靠性,方便有效的实现自定义的角色权限控制。因此,本发明具有以下优点
1、能够细化到对每一个操作进行权限控制;
32、可以同时实现粗粒度、细粒度层面进行权限控制;
3、设计结构清晰,方便操作;
4、消耗系统资源少,执行效率较高,可靠性强,非常适合中小型的管理信息系统;
5、可扩展性强,可以方便的实现自定义的权限管理,可以自定义增加删除及修改权限。
附图1基于角色的权限设计示意图; 附图2基于操作的权限设计示意附图3基于角色和操作的权限设计示意图; 附图4本发明权限设计示意图。
具体实施例方式参照说明书附图对本发明的方法作以下详细地说明。本发明的一种管理信息系统中自定义角色权限的方法,基于角色和操作的权限设计本发明是通过以下技术方案实现的
(1)在系统中创建两个表,用户表和权限表。其中,用户表除包括用户名密码等必要信息外还包括用户权限字段,权限表包括角色名称和各种权限定义字段。这两个表通过Role 字段关联起来;
(2)为要求进行权限控制的每一个用户操作甚至是每一个事件在权限表中设置一个相应的字段,值为“ 1,,表示有进行此操作的权限,值为“0”则表示没有此操作的权限;其他值也可以,这里只是起到一个标识的作用;
(3)在系统中设置一个权限管理模块,列出要创建的角色的名称并以多选框的形式列出所要进行权限控制的项目,管理员填写角色名称并选择相应的权限提交后生效。使用这种方式方便、直观,可以获得更好的用户体验;
(4)将用户与权限关联起来,创建或注册用户时通过下拉框选择上一步创建的角色名称然后完成创建;
(5)进行某一操作之前首先要在用户表中查询相应的角色,然后在权限表中查询此角色有无相应的权限
A)若有此权限执行该操作;
B)若无此权限终止该操作并发出没有权限的提示。用户表结构如下
权利要求
1. 一种管理信息系统中自定义角色权限的方法,其特征在于具体步骤如下(1)在系统中创建用户表和权限表,其中,用户表除包括用户名密码必要信息外,还包括用户权限字段,权限表包括角色名称和各种权限定义字段;(2)为要求进行权限控制的每一个用户操作甚至是每一个事件在权限表中设置一个相应的字段,值为“ 1,,表示有进行此操作的权限,值为“0”则表示没有此操作的权限;(3)在系统中设置一个权限管理模块,列出要创建的角色的名称并以多选框的形式列出所要进行权限控制的项目,管理员填写角色名称并选择相应的权限提交后生效;(4)将用户与权限关联起来,创建或注册用户时通过下拉框选择上一步创建的角色名称然后完成创建;(5)进行某一操作之前,首先要在用户表中查询相应的角色,然后在权限表中查询此角色有无相应的权限;A)若有此权限执行该操作;B)若无此权限终止该操作并发出没有权限的提示。
全文摘要
本发明提供一种管理信息系统中自定义角色权限的方法,在具体某一个操作甚至某一个事件层面实现了细粒度权限的控制,解决了管理信息系统中自定义角色权限的问题,应用在管理信息系统中可以方便的实现自定义角色的权限并实现对自定义权限的管理,在粗粒度、细粒度两各方面都能进行有效的应用,从而保证了权限管理范围的广泛性与高度的可靠性,方便有效的实现自定义的角色权限控制。
文档编号G06F21/00GK102402663SQ20111039250
公开日2012年4月4日 申请日期2011年12月1日 优先权日2011年12月1日
发明者付正全, 刘成平, 刘正伟 申请人:浪潮电子信息产业股份有限公司