权限控制系统及方法

文档序号:9489683阅读:681来源:国知局
权限控制系统及方法
【技术领域】
[0001]本发明涉及互联网信息系统的用户管理领域,尤其涉及一种权限控制系统及方法。
【背景技术】
[0002]权限管理是Web应用项目中比较关键的环节,其能够让经过授权的用户可以正常合法地使用已授权的功能,而将未授权的非法用户拒之门外。
[0003]在现有的企业信息系统中,为了安全考虑,一般都会涉及到用户权限管理的问题。通常的权限体系主要是解决“谁”对“什么资源”进行了“什么操作”的问题,也就是用户、角色、功能资源等的要素问题。常见的授权体系是基于角色功能映射表来实现用户至上权限管理的。通常做法是先将系统功能粗分为模块,然后在模块中细分各种子功能,然后将“模块+子功能”定义为一个可授权的功能对象,更进一步,对可授权对象配置不相容关系,在授权过程中判断,符合互斥关系的权限不能授予同一用户,或同一角色主体。
[0004]但是,在现实业务系统中,仅仅描述哪些用户对哪些资源拥有权限还远远不够,还需要判断当某些用户正在行使他们的权限来执行某些操作时,其它用户根据与该用户的关系连带具有哪些权限。比如,该用户创建一用户表,其它用户根据与该用户的关系,比如上下级关系,可以修改该用户表的数据,而平行关系只能查看该用户表,其下级的用户则不具有查看和修改该用户表的权限。
[0005]当前的用户权限管理系统中,至少存在以下缺陷:1、代码不可重用,需要在每个调用权限的地方写代码控制。也就是说,每开发一个功能点,开发人员都需要把权限控制的代码重写一遍;2、不能实现动态权限管理,现有的权限管理一般都是开发一套系统,就要做一套权限管理,即使功能相似,开发人员也需要耗费较多的时间对新的系统进行重新设定,费时费力。

【发明内容】

[0006]有鉴于此,本发明提供一种权限控制系统及方法,以解决上述至少一个技术问题。
[0007]本发明实施例提供一种权限控制系统,包括:设置模组,用于设置一用户信息表的参数;编写模组,用于根据所述参数为每一个用户编写对应的用户信息表;以及解析模组,用于解析所有的用户信息表,并创建各个用户的上下级关系映射信息,其中所述上下级关系映射信息为双向链表结构。
[0008]本发明实施例还提供一种权限控制方法,包括步骤:设置用户信息表的参数;根据所述参数为每一个用户编写对应的用户信息表;以及解析所有的用户信息表,并创建各个用户的上下级关系映射信息,其中所述上下级关系映射信息为双向链表结构。
[0009]本发明的权限控制系统和方法,基于双向链表结构,来实现上下级关系用户权限控制,在文档的显示和权限的控制中,处理速度非常快,而且当权限规则或上下级关系发生变化时,只需要修改对应的规则即可,无需对整个系统的程序端进行修改,大大提高了程序应用的效率。
【附图说明】
[0010]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0011]图1是根据本发明第一实施例的权限控制系统的功能模块图;
[0012]图2是根据本发明第二实施例的权限控制系统的功能模块图;
[0013]图3是本发明第一实施例提供的权限控制方法的流程图;
[0014]图4是本发明第二实施例提供的权限控制方法的流程图。
具体实施例
[0015]下面结合附图和具体实施例对本发明的技术方案作进一步更详细的描述。显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
[0016]第一实施例
[0017]请参阅图1,其是本发明第一实施例提供的一种权限控制系统100的功能模块图。所述权限控制系统100包括设置模组10、编写模组20以及解析模组30。
[0018]所述设置模组10用于设置用户信息表的参数。本实施例中,所述用户信息表的参数至少包括用户名、用户属性、用户允许的操作、以及用户上下级关系。其中,所述允许的操作包括创建文档、显示文档、修改文档以及删除文档,所述用户上下级关系包括用户的父节点信息和子节点信息。此外,所述上下级关系的设置功能,也可以通过一个关系列表和关系新增、编辑的界面,以及一个禁止上下级关系的功能来实现。所述关系列表显示已存在的上下级关系,具体为采用一个上级对应一个或多个下级的展现方式,如果希望添加新的上下级关系,可新增界面,选取该部门对应的领导,然后选取该部属门对应的下属。而如果希望进行编辑,就可以选择相应的编辑界面,禁用上下级的功能或修改对应关系等。
[0019]所述编写模组20用于根据所述参数,为每一个用户编写对应的用户信息表。具体的,所述编写模组20在该用户信息表中设定对应的用户名、用户允许的操作信息、用户的父节点信息和子节点信息。
[0020]所述解析模组30用于根据预先设定的规则,解析所有的用户信息表,并创建各个用户的上下级关系映射信息。其中,所述上下级关系映射信息为双向链表结构。具体的,双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。此外,所述各个用户的上下级关系映射信息具体指:在映射表中包含对应的两条数据,一条是以上级领导为当前用户,设置其上级领导和下级领导,另一条则是以下属为当前用户,设置其上级领导和下级下属。
[0021]本实施例的权限控制系统100基于双向链表结构,来实现上下级关系用户权限控制,在文档的显示和权限的控制中,处理速度非常快,而且当权限规则或上下级关系发生变化时,只需要修改对应的规则即可,无需对整个系统的程序端进行修改,大大提高了程序应用的效率。
[0022]第二实施例
[0023]本发明第二实施例的权限控制系统100a与第一实施例的权限控制系统100基本相同,其区别在于,第二实施例的权限控制系统100a进一步包括关联模组40、查询模组50以及权限设置模组60。
[0024]所述关联模组40用于当接收到用户创建的文档信息时,将该用户与该文档名称进行关耳关。
[0025]所述查询模组50用于根据用户名,查询相应的双链表结构的上下级关系映射信息,以获取对应用户的具有下级关系的子节点信息和/或具有上级关系的父节点,并显示对应的文档。具体的,所述查询模组50包括第一查询单元51以及第二查询单元52。所述第一查询单元51用于查询相应的双链表结构的上下级关系映射信息,以获取对应用户的具有下级关系的子节点信息,并显示该子节点用户所创建的所有文档。所述第二查询单元52用于查询相应的双链表结构的上下级关系映射信息,以获取对应用户的具有上级关系的父节点及其平级节点信息,并显示所述父节点及其平级节点用户所创建的所有文档。可以理解的是,所述第一查询单元51和第二查询单元52的执行顺序可根据实际情况进行调整。
[0026]所述权限设置模组60用于根据所述上下级关系映射信息,设定所述文档的权限。对应于所述查询模组50,所述权限设置模组60包括第一权限设置单元61以及第二权限设置单元62,所述第一权限设置单元61用于将该子节点用户所创建的所有文档的权限设置为可修改,所述第二权限设置单元62用于将该父节点及其平级节点用户所创建的所有文档的权限设置为不可修改。
[0027]此外,在本
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1