基于角色对用户的一对一的组织结构图生成及应用方法与流程

文档序号:15615810发布日期:2018-10-09 21:20阅读:279来源:国知局

本发明涉及组织结构图的生成方法,特别是涉及一种基于角色对用户的一对一的组织结构图生成及应用方法。



背景技术:

基于角色的访问控制(rbac)是近年来研究最多、思想最成熟的一种数据库权限管理机制,它被认为是替代传统的强制访问控制(mac)和自主访问控制(dac)的理想候选。基于角色的访问控制(rbac)的基本思想是根据企业组织视图中不同的职能职位划分不同的角色,将数据库资源的访问权限封装在角色中,用户通过被赋予不同的角色来间接访问数据库资源。

在大型应用系统中往往都建有大量的表和视图,这使得对数据库资源的管理和授权变得十分复杂。由用户直接管理数据库资源的存取和权限的收授是十分困难的,它需要用户对数据库结构的了解非常透彻,并且熟悉sql语言的使用,而且一旦应用系统结构或安全需求有所变动,都要进行大量复杂而繁琐的授权变动,非常容易出现一些意想不到的授权失误而引起的安全漏洞。因此,为大型应用系统设计一种简单、高效的权限管理方法已成为系统和系统用户的普遍需求。

基于角色的权限控制机制能够对系统的访问权限进行简单、高效的管理,极大地降低了系统权限管理的负担和代价,而且使得系统权限管理更加符合应用系统的业务管理规范。

然而,传统基于角色的用户权限管理方法均采用“角色对用户一对多”的关联机制,其“角色”为组/类性质,即一个角色可以同时对应/关联多个用户,角色类似于职位/职位/工种等概念,这种关联机制下对用户权限的授权基本分为以下三种形式:1、如图1所示,直接对用户授权,缺点是工作量大、操作频繁且麻烦;2、如图2所示,对角色(类/组/职位/工种性质)进行授权(一个角色可以关联多个用户),用户通过角色获得权限;3、如图3所示,以上两种方式结合。

以上的表述中,2、3均需要对类/组性质的角色进行授权,而通过类/组/职位/工种性质的角色进行授权的方式有以下缺点:1、用户权限变化时的操作难:在实际的系统使用过程中,经常因为在运营过程中需要对用户的权限进行调整,比如:在处理员工权限变化的时候,角色关联的某个员工的权限发生变化,我们不能因该个别员工权限的变化而改变整个角色的权限,因为该角色还关联了其他权限未变的员工。因此为了应对该种情况,要么创建新角色来满足该权限发生变化的员工,要么对该员工根据权限需求直接授权(脱离角色)。以上两种处理方式,在角色权限较多的情况下对角色授权不仅所需时间长,而且容易犯错,使用方操作起来繁琐又麻烦,也容易出错导致对系统使用方的损失。

2、要长期记住角色包含的具体权限难:若角色的权限功能点比较多,时间一长,很难记住角色的具体权限,更难记住权限相近的角色之间的权限差别,若要关联新的用户,无法准确判断应当如何选择关联。

3、因为用户权限变化,则会造成角色创建越来越多(若不创建新角色,则会大幅增加直接对用户的授权),更难分清各角色权限的具体差别。

4、调岗时,若要将被调岗用户的很多个权限分配给另外几个用户承担,则处理时必须将被调岗用户的这些权限区分开来,分别再创建角色来关联另外几个用户,这样的操作不仅复杂耗时,而且还很容易发生错误。

组织结构图反映的是一个公司或团体的组成架构,人们可以通过组织结构图来查找相应的员工。现有的组织结构图中,显示用户时通常只显示用户的姓名,在进行选择时只能大概了解各员工的职责;虽然有少数组织结构图中显示了各用户对应的职位,但是由于一个职位对应的用户并不唯一,同样在进行选择时只能大概了解各员工的职责。在员工兼任其他工作的情况下,无法以岗位将员工区分出来显示,另外,若只想选择该员工的某一岗位则无法选择。



技术实现要素:

本发明的目的在于克服现有技术的不足,提供一种基于角色对用户的一对一的组织结构图生成及应用方法,结构组织图中显示有员工的姓名和角色,由于角色只与一个员工关联,因而能够清楚地了解员工的职责。

本发明的目的是通过以下技术方案来实现的:基于角色对用户的一对一的组织结构图生成方法,包括:

s1.创建部门:建立新的部门,若存在现有部门则为该新的部门选择上级部门;

s2.创建角色:建立新的角色,每个角色是独立的个体,而非组/类;为该新的角色选择一个部门,则该角色归属于该部门,且该角色在该部门下唯一,根据角色的工作内容对角色进行授权;

s3.创建用户:创建员工,填写该员工的姓名,并为该员工生成唯一的用户(即为员工与用户之间建立关联关系,可分别创建员工、用户,关联时为员工选用户进行关联,或为用户选员工进行关联均可),且为用户关联一个或多个角色,其中同一时段一个角色只能关联唯一的用户;

s4.生成组织结构图:根据部门之间的层级关系、角色和部门之间的归属关系、用户和角色之间的关联关系、用户与员工之间的关联关系生成组织结构图,所述组织结构图中显示的用户信息包括用户的姓名和角色。

优选的,同一部门的下一级部门的部门名称不重复,且各部门设置有组织结构图中唯一的编号;同一部门的角色的名称不重复,且各角色设置有组织结构图中唯一的编号。

优选的,还包括设置主管角色的步骤,具体包括:为一个部门设置主管角色时,只能选择该部门下的一个角色作为该部门的主管角色。

优选的,修改一个部门的主管角色时,只能选择该部门下的一个角色作为新的主管角色。

优选的,所述组织结构图中各部门的主管角色显示在该部门下的第一位置。

优选的,当创建的部门为厂时,该部门的上级部门和下级部门中均不包括厂。

优选的,当用户有多个角色时标注一个角色为主要角色,标注主要角色以外的角色为兼任角色所述组织结构图中区别显示主要角色和兼任角色。

优选的,当用户跨部门调岗时,取消用户与原部门内的角色的关联,将用户与新部门内的角色进行关联。优选的,所述s3中还包括为角色选择对应职位的步骤。

如上述的组织结构图的应用方法,当需要选择姓名、角色或部门时显示所述组织结构图,通过点击组织结构图中的姓名、角色或部门完成对象的选择。

本发明的有益效果是:(1)组织结构图中各部门的主管角色显示在该部门的第一位置、用户的主要角色和兼任角色区分显示,便于直观地了解各部门的具体构成元素以及各用户的主要职责;同时,由于角色只关联唯一的用户,因此能够准确的了解各用户的职责,便于在运用组织结构图时清楚、简明地进行选择;通过组织结构图能够一目了然地知道员工、角色、职位,便于判断大概的工作内容,有助于对选择对象的准确及快速判断。

(2)传统的权限管理机制将角色定义为组、工种、类等性质,角色对用户是一对多的关系,在实际的系统使用过程中,经常因为在运营过程中需要对用户的权限进行调整,比如:在处理员工权限变化的时候,角色关联的某个员工的权限发生变化,我们不能因该个别员工权限的变化而改变整个角色的权限,因为该角色还关联了其他权限未变的员工。因此为了应对该种情况,要么创建新角色来满足该权限发生变化的员工,要么对该员工根据权限需求直接授权(脱离角色)。以上两种处理方式,在角色权限较多的情况下对角色授权不仅所需时间长,而且容易犯错,使用方操作起来繁琐又麻烦,也容易出错导致对系统使用方的损失。

但在本申请的方法下,因为角色是一个独立的个体,则可以选择改变角色权限即可达到目的。本申请的方法,虽然看起来在系统初始化时会增加工作量,但可以通过复制等方法,使其创建角色或授权的效率高于传统以组为性质的角色,因为不用考虑性质为组的角色在满足关联用户时的共通性,本申请方案会让权限设置清晰,明了;尤其是在系统使用一段时间后(用户/角色权限动态变化),该申请方案能为系统使用方大幅度提高系统使用中的权限管理效率,使动态授权更简单,更方便,更清晰、明了,提高权限设置的效率和可靠性。

(3)传统以组为性质的角色授权方法容易出错,本申请方法大幅降低了授权出错的几率,因为本申请方法只需考虑作为独立个体的角色,而不用考虑传统方法下关联该组性质角色的多个用户有哪些共通性。即使授权出错也只影响关联到该角色的那一个用户,而传统以组性质的角色则会影响关联到该角色的所有用户。即使出现权限授权错误,本申请的修正方法简单、时间短,而传统以组性质的角色在修正错误时需要考虑关联到该角色的所有用户的权限共通性,在功能点多的情况下不仅修改麻烦、复杂,非常容易出错,且很多情况下只能新创建角色才能解决。

(4)在传统以组为性质的角色授权方法下,若角色的权限功能点比较多,时间一长,很难记住角色的具体权限,更难记住权限相近的角色之间的权限差别,若要关联新的用户,无法准确判断应当如何选择关联。本申请方法的角色本身就具有职位号/工位号的性质,选择一目了然。

(5)调岗时,若要将被调岗用户的很多个权限分配给另外几个用户承担,则处理时必须将被调岗用户的这些权限区分开来,分别再创建角色来关联另外几个用户,这样的操作不仅复杂耗时,而且还很容易发生错误。

本申请方法则为:被调岗用户关联了几个角色,在调岗时,首先取消用户与原部门内的角色的关联(被取消的这几个角色可以被重新关联给其他用户),然后将用户与新部门内的角色进行关联即可。操作简单,不会出错。

(6)创建角色时,需要选定一个部门,一旦该角色创建完成,则部门不能被更换,角色为什么不能更换部门:理由1:因为本申请的角色性质等同于一个工位号/职位号,不同的工位号/职位号的工作内容/权限是不一样的,如销售部门下的销售员1角色和技术部门的开发人员1角色是完全不同的两个工位号/职位号,其权限是不同的;理由2:若将销售员1角色的所属部门(销售部)更换为技术部,其销售人员1这个角色的权限不变,则在技术部存在拥有销售部权限的一个角色,这样会导致管理混乱及安全漏洞。

附图说明

图1为背景技术中系统直接对用户进行授权的方式示意图;

图2为背景技术中系统对组/类性质角色进行授权的方式示意图;

图3为背景技术中系统对用户直接授权和对组/类性质角色授权相结合的方式示意图;

图4为本发明中组织结构图生成方法的流程图;

图5为某公司现有的组织结构示意图;

图6为图5增加销售二部后的组织结构示意图。

具体实施方式

下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。

如图4所示,基于角色对用户的一对一的组织结构图生成方法,包括:s1.创建部门:建立新的部门,若存在现有部门则为该新的部门选择上级部门。也就是说新建的部门为组织结构图中的第一个部门(组织结构中的最高部门或机构)时,则不为该新建的部门选择上级部门,否则为新建的部门选择上级部门。例如,现有部门有总经办和市场部,新建的部门为销售一部,则选择市场部作为销售一部的上级部门。

同一部门的下一级部门的部门名称不重复,保证不会出现因一个部门下有同名的部门导致的识别困难的情况,如市场部下面有两个销售部门,可以将这两个销售部门命名为销售一部和销售二部,而不能将这两个销售部门均命名为销售部,否则会出现混淆的情况。各部门设置有组织结构图中唯一的编号,在有大量部门时能够通过编号快速检索到目标部门,提高了使用组织结构图时的部门查找速度。

每个部门都需要有一个角色负责该部门,定义该角色为主管角色。设置主管角色的步骤具体包括:为一个部门设置主管角色时,只能选择该部门下的一个角色作为该部门的主管角色。由于只能选择部门本身下的角色作为该部门的主管角色,避免了出现其他部门的角色来负责该部门的事物的混乱情况。如部门a下面有角色a、角色b和角色c,部门b下面有角色d、角色e和角色f,可以选择角色a、角色b和角色c中的任意一个作为部门a的主管角色,而不能选择角色d、角色e和角色f作为部门a的主管角色。

每个部门的主管角色都可以进行修改,具体修改方法为:修改一个部门的主管角色时,只能选择该部门下其余的一个角色作为新的主管角色。如部门a下面有角色a、角色b和角色c,部门b下面有角色d、角色e和角色f,部门a的当前主管角色为角色a,可以选择角色b和角色c中的任意一个作为部门a的新的主管角色,而不能选择角色d、角色e和角色f作为部门a的新的主管角色。

当创建的部门为厂时,该部门的上级部门和下级部门中均不包括厂。例如,现有部门有厂、总经办和董事会,新建的部门为厂时,可以选择总经办和董事会作为新建的厂的上级部门,而不能选择现有的厂作为新建的厂的上级部门。

s2.创建角色:建立新的角色,每个角色是独立的个体,而非组/类;为该新的角色选择一个部门,则该角色归属于该部门,且该角色在该部门下唯一,根据角色的工作内容对角色进行授权。

同一部门的角色的名称不重复,且各角色设置有组织结构图中唯一的编号。

角色的定义:角色不具有组/类/类别/职位/职位/工种等性质,而是一个非集合的性质,角色具有唯一性,角色是独立存在的独立个体;在企事业单位应用中相当于职位号(此处的职位号非职位,一个职位同时可能有多个员工,而同一时段一个职位号只能对应一个员工)。

举例:某个公司系统中可创建如下角色:总经理、副总经理1、副总经理2、北京销售一部经理、北京销售二部经理、北京销售三部经理、上海销售工程师1、上海销售工程师2、上海销售工程师3、上海销售工程师4、上海销售工程师5……对角色的授权:系统对角色的授权包括但不限于对表单的授权、对菜单的授权或对功能的授权。对表单的操作授权包括但不限于增删查改。

对角色的授权包括但不限于对表单的授权、对菜单的授权或对功能的授权。

所述的角色归属于部门,且该角色在该部门下唯一,根据角色的工作内容对角色进行授权。

s3.创建用户:创建员工,填写该员工的姓名,并为该员工生成唯一的用户,且为用户关联一个或多个角色,其中同一时段一个角色只能关联唯一的用户。

所述s3中还包括为角色选择对应职位的步骤。传统角色的概念是组/类/职位/职位/工种性质,一个角色能够对应多个用户。而本申请“角色”的概念相当于职位号/工位号,也类同于影视剧中的角色:一个角色在同一时段(童年、少年、中年……)只能由一个演员来饰演,而一个演员可能会分饰多角。

在创建角色之后,可以在创建用户的过程中关联角色,也可以在用户创建完成后随时进行关联。用户关联角色后可以随时解除与角色的关联关系,也可以随时建立与其他角色的关联关系。

如果用户要变换部门则涉及到跨部门调岗,其具体操作过程包括:(1)取消用户与原部门内的角色的关联;(2)将用户与新部门内的角色进行关联。

s4.生成组织结构图:根据部门之间的层级关系、角色和部门之间的归属关系、用户和角色之间的关联关系、用户与员工之间的关联关系生成组织结构图,所述组织结构图中显示的用户信息包括用户的姓名和角色。

所述组织结构图中各部门的主管角色显示在该部门下的第一位置,在查看组织结构图时能够快速地找到各部门的主管角色,从而找到各部门的负责人,提高了组织结构图的查看效率。

当用户有多个角色时标注一个角色为主要角色,标注主要角色以外的角色为兼任角色,所述组织结构图中区别显示主要角色和兼任角色,由于一个用户可以关联多个角色,在组织结构图中将用户的主要角色和兼任角色进行区别显示,如将兼任角色采用斜体字,便于快速找到用户的主要角色,查看用户的主要职责。如上述的组织结构图的应用方法,当需要选择姓名、角色或部门时显示所述组织结构图,通过点击组织结构图中的姓名、角色或部门完成对象的选择。

图5表示某公司现有的组织结构示意图。现需在该公司的市场部下加入销售二部,销售二部下设角色1(王五),角色2(王六)和角色3(王五),其新的组织结构图生成方法如下:创建部门:创建销售二部,并选择市场部作为销售二部的上级部门。

创建角色:创建角色1,角色2和角色3,为这三个角色选择销售二部作为其归属部门,然后根据这三个角色的工作内容为这三个角色进行授权。

创建用户:创建两个员工,一个员工的姓名设置为王五,并为王五生成唯一的用户,且为该用户关联角色1和角色3,将角色1设置为王五的主要角色,将角色2设置为王五的兼任角色,同时将角色1设置为销售二部的主管角色;另一个员工的姓名设置为王六,并为王六生成唯一的用户,且为该用户关联角色2。

生成组织结构图:根据销售二部和市场部之间的层级关系、三个角色和部门之间的归属关系、两个用户和三个角色之间的关联关系、用户与员工之间的关联关系生成组织结构图。新的组织结构如图6所示。在图5和图6中,也可将角色显示在前,将角色对应的用户或员工显示在后。

以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1