掌桥专利:专业的专利平台
掌桥专利
首页

一种用户权限配置方法、装置、设备及可读存储介质

文献发布时间:2023-06-19 09:58:59


一种用户权限配置方法、装置、设备及可读存储介质

技术领域

本申请涉及计算机技术领域,特别涉及一种用户权限配置方法、装置、设备及可读存储介质。

背景技术

目前,一般基于简单的菜单对用户权限进行划分和配置,以便区分不同用户对同一菜单,或同一用户对不同菜单的访问权限。但是,基于菜单划分用户权限,不能使用户对具体数据有不同的访问权限,因此数据安全性得到有效保障。

因此,如何在配置用户权限时,保障数据安全性,是本领域技术人员需要解决的问题。

发明内容

有鉴于此,本申请的目的在于提供一种用户权限配置方法、装置、设备及可读存储介质,以在配置用户权限时,保障数据安全性。其具体方案如下:

第一方面,本申请提供了一种用户权限配置方法,包括:

根据用户选择的数据权限生成用户数据权限序列,并根据所述用户选择的菜单权限生成用户菜单权限序列;

对比所述用户数据权限序列与任一个角色数据权限特征,以及所述用户菜单权限序列与任一个角色菜单权限特征,以确定所述用户所属的角色域;

分别判断所述用户数据权限序列和所述用户菜单权限序列是否超出所述角色域的权限范围;

若否,则存储所述用户数据权限序列和所述用户菜单权限序列,并生成包括所述用户数据权限序列和所述用户菜单权限序列的权限配置结果。

优选地,所述数据权限包括任一字段对应的权限属性。

优选地,若所述用户数据权限序列为所述角色数据权限特征的子集,则确定所述用户属于所述角色数据权限特征对应的角色域;否则,确定所述用户不属于所述角色数据权限特征对应的角色域;

若所述用户菜单权限序列为所述角色菜单权限特征的子集,则确定所述用户属于所述角色菜单权限特征对应的角色域;否则,确定所述用户不属于所述角色菜单权限特征对应的角色域。

优选地,所述分别判断所述用户数据权限序列和所述用户菜单权限序列是否超出所述角色域的权限范围,包括:

判断所述用户数据权限序列是否超出所述角色数据权限特征对应的角色域的权限范围;

判断所述用户菜单权限序列是否超出所述角色菜单权限特征对应的角色域的权限范围。

优选地,所述存储所述用户数据权限序列和所述用户菜单权限序列,包括:

基于所述用户数据权限序列和所述用户菜单权限序列生成并存储查询语句。

优选地,所述生成包括所述用户数据权限序列和所述用户菜单权限序列的权限配置结果之后,还包括:

若接收到用户访问请求,则根据所述用户菜单权限序列显示菜单功能,根据所述用户数据权限序列查询并显示访问数据。

优选地,还包括:

若所述用户数据权限序列和/或所述用户菜单权限序列超出所述角色域的权限范围,则生成包括超范围提示消息的所述用户的权限配置结果。

第二方面,本申请提供了一种用户权限配置装置,包括:

生成模块,用于根据用户选择的数据权限生成用户数据权限序列,并根据所述用户选择的菜单权限生成用户菜单权限序列;

对比模块,用于对比所述用户数据权限序列与任一个角色数据权限特征,以及所述用户菜单权限序列与任一个角色菜单权限特征,以确定所述用户所属的角色域;

判断模块,用于分别判断所述用户数据权限序列和所述用户菜单权限序列是否超出所述角色域的权限范围;

配置模块,用于若所述用户数据权限序列和所述用户菜单权限序列未超出所述角色域的权限范围,则存储所述用户数据权限序列和所述用户菜单权限序列,并生成包括所述用户数据权限序列和所述用户菜单权限序列的权限配置结果。

第三方面,本申请提供了一种用户权限配置设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序,以实现前述公开的用户权限配置方法。

第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述公开的用户权限配置方法。

通过以上方案可知,本申请提供了一种用户权限配置方法,包括:根据用户选择的数据权限生成用户数据权限序列,并根据所述用户选择的菜单权限生成用户菜单权限序列;对比所述用户数据权限序列与任一个角色数据权限特征,以及所述用户菜单权限序列与任一个角色菜单权限特征,以确定所述用户所属的角色域;分别判断所述用户数据权限序列和所述用户菜单权限序列是否超出所述角色域的权限范围;若否,则存储所述用户数据权限序列和所述用户菜单权限序列,并生成包括所述用户数据权限序列和所述用户菜单权限序列的权限配置结果。

可见,本申请根据用户选择的数据权限生成用户数据权限序列,并根据用户选择的菜单权限生成用户菜单权限序列;对比用户数据权限序列与任一个角色数据权限特征,以及用户菜单权限序列与任一个角色菜单权限特征,以确定用户所属的角色域;分别判断用户数据权限序列和用户菜单权限序列是否超出角色域的权限范围;若否,则存储用户数据权限序列和用户菜单权限序列,并生成包括用户数据权限序列和用户菜单权限序列的权限配置结果,从而实现了用户权限的自定义选择、自动审核和配置,提高了配置效率;同时,配置用户权限时,综合考虑了数据权限和菜单权限,因此可保障数据的安全性以及可靠性。

相应地,本申请提供的一种用户权限配置装置、设备及可读存储介质,也同样具有上述技术效果。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请公开的一种用户权限配置方法流程图;

图2为本申请公开的一种基于用户权限的访问控制流程图;

图3为本申请公开的一种用户权限配置装置示意图;

图4为本申请公开的一种用户权限配置设备示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

目前,一般基于简单的菜单对用户权限进行划分和配置,以便区分不同用户对同一菜单,或同一用户对不同菜单的访问权限。但是,基于菜单划分用户权限,不能使用户对具体数据有不同的访问权限,因此数据安全性得到有效保障。为此,本申请提供了一种用户权限配置方案,能够在配置用户权限时,保障数据安全性,实现用户权限的自定义选择和自动审核。

参见图1所示,本申请实施例公开了一种用户权限配置方法,包括:

S101、根据用户选择的数据权限生成用户数据权限序列,并根据用户选择的菜单权限生成用户菜单权限序列。

在本实施例中,用户为不同区域的管理员用户,该管理员用户为相应区域的访问用户选择数据访问权限和菜单访问权限。

在一种具体实施方式中,数据权限包括任一字段对应的权限属性。例如:身份证这一字段对应的权限属性,有访问权限时,权限属性设置为1,无访问权限时,权限属性设置为0。当然,该访问权限可进一步细分为修改权限、删除权限、查询权限等。若某一用户对身份证这一字段无修改权限和删除权限,仅有查询权限,那么针对身份证这一字段,数据权限序列可记录为:A:001,其中,A表示身份证这一字段,第一位“0”表示无修改权限,第二位“0”表示无删除权限,第三位“1”表示有查询权限。也即:修改权限用第一位表示,删除权限用第二位表示,查询权限用第三位表示。据此,某一用户对ABC这3个字段的用户数据权限序列可记录为:A:001,B:110,C:000。

用户菜单权限序列一般只有查询权限,用0标记不可查询属性,用1标记可查询属性即可。

需要说明的是,用户选择的数据权限可能属于不同角色域。同样地,用户选择的菜单权限也可能属于不同角色域。当属于不同角色域时,按照S103分别判断,而后给出相应的提示信息。

S102、对比用户数据权限序列与任一个角色数据权限特征,以及用户菜单权限序列与任一个角色菜单权限特征,以确定用户所属的角色域。

在一种具体实施方式中,若用户数据权限序列为角色数据权限特征的子集,则确定用户属于角色数据权限特征对应的角色域;否则,确定用户不属于角色数据权限特征对应的角色域;若用户菜单权限序列为角色菜单权限特征的子集,则确定用户属于角色菜单权限特征对应的角色域;否则,确定用户不属于角色菜单权限特征对应的角色域。

其中,角色数据权限特征对应的角色域和角色菜单权限特征对应的角色域可以相同,也可以不同。角色域可以为:超级管理员、普通管理员、维护人员或操作人员等。角色数据权限特征和角色菜单权限特征是表征一个角色域的独有特征。不同角色域对应的角色数据权限特征不同,当然,可以有部分重合。同样地,不同角色域对应的角色菜单权限特征不同,当然,可以有部分重合。

S103、分别判断用户数据权限序列和用户菜单权限序列是否超出角色域的权限范围;若是,则执行S105;若否,则执行S104。

在一种具体实施方式中,分别判断用户数据权限序列和用户菜单权限序列是否超出角色域的权限范围,包括:判断用户数据权限序列是否超出角色数据权限特征对应的角色域的权限范围;判断用户菜单权限序列是否超出角色菜单权限特征对应的角色域的权限范围。

S104、存储用户数据权限序列和用户菜单权限序列,并生成包括用户数据权限序列和用户菜单权限序列的权限配置结果。

S105、生成包括超范围提示消息的用户的权限配置结果。

若用户数据权限序列超出角色数据权限特征对应的角色域的权限范围,和/或用户菜单权限序列超出角色菜单权限特征对应的角色域的权限范围,则生成包括超范围提示消息的用户的权限配置结果。

其中,包括超范围提示消息的权限配置结果可以展示给用户或平台管理员审阅,用户可以基于超范围提示消息修改用户数据权限序列和/或用户菜单权限序列,平台管理员可以自主确定是否让用户所选的菜单权限和数据权限审核通过。

在一种具体实施方式中,存储用户数据权限序列和用户菜单权限序列,包括:基于用户数据权限序列和用户菜单权限序列生成并存储查询语句,以便在接收到用户访问请求后,利用所述查询语句查询菜单功能和数据,并在平台客户端进行显示。

在一种具体实施方式中,生成包括用户数据权限序列和用户菜单权限序列的权限配置结果之后,还包括:若接收到用户访问请求,则根据用户菜单权限序列显示菜单功能,根据用户数据权限序列查询并显示访问数据。用户访问请求可以由管理员用户或相应区域内配置有权限的访问用户利用客户端发送。

可见,本申请实施例根据用户选择的数据权限生成用户数据权限序列,并根据用户选择的菜单权限生成用户菜单权限序列;对比用户数据权限序列与任一个角色数据权限特征,以及用户菜单权限序列与任一个角色菜单权限特征,以确定用户所属的角色域;分别判断用户数据权限序列和用户菜单权限序列是否超出角色域的权限范围;若否,则存储用户数据权限序列和用户菜单权限序列,并生成包括用户数据权限序列和用户菜单权限序列的权限配置结果,从而实现了用户权限的自定义选择、自动审核和配置,提高了配置效率;同时,配置用户权限时,综合考虑了数据权限和菜单权限,因此可保障数据的安全性以及可靠性。

本申请实施例公开了一种用户权限配置方案,包括:

(1)设置菜单集合M{m

设置菜单集合中每个菜单元素(即m

(2)设置数据集合D{d

设置数据集合中每个数据元素(即d

比如d1若存在删除、修改、查询。则权限序列为111。

(3)定义集合R{R

3.1、定义菜单权限序列:为每个角色元素(即R

3.2、定义数据权限序列:为每个角色元素定义数据权限序列:用户j的数据权限序列可以表示为:Rj.data={d

(4)定义角色域以及每个角色域的菜单权限序列主键、数据权限序列主键。

角色域包括但不限于超级管理员、普通管理员、维护人员、操作人员。操作人员可以再细分为高级操作人员、中级操作人员、低级操作人员等。每个角色域的菜单权限序列主键(即角色菜单权限特征)和数据权限序列主键(即角色数据权限特征)。

其中,每个角色域均有其特定的角色域基线(即菜单权限序列主键和数据权限序列主键)。不同角色域特征互异。

(5)配置用户属性:配置用户菜单权限、用户数据权限。

合并每个用户选择的菜单权限序列中的各个属性序列,即:将角色菜单权限序列中每个属性序列进行与操作。如:(m

合并每个用户选择的数据权限序列中的各个属性序列,即:将数据权限序列中每个属性序列进行与操作。如:(d

A.将用户菜单权限序列与菜单权限序列主键对比,将用户数据权限序列与数据权限序列主键对比,以确定该用户所属的角色域。

B.根据每个角色域基线,判断用户选择的菜单权限和数据权限是否超越A确定的角色域的权限范围,如超出,则提示用户重选或提示后台审核人员重审,如未超出,则跳转到C。

C.将用户数据权限序列对应的数据对象及用户数据权限序列添加到用户权限属性集合中,然后将数据对象及其权限作为数据查询语句的参数自动生成该用户的数据权限查询语句。

(6)每次用户登录后,先根据用户菜单权限序列对平台进行展示,再根据C中的数据权限查询语句从大数据平台的elasticsearch(ES)集群中查询对应的数据并展示,具体请参见图2。

本实施例对数据以字段划分权限,实现了更细粒度的数据权限划分。将一个用户选择的权限进行了合并,以删除重复权限,实现权限策略最小化。当然,若利用本实施例更新原访问控制系统的权限管理功能,每个用户依然能够保持了其在原来的访问控制系统中对应的角色以及相应的权限,同时在原数据库中的访问控制系统也不用改变。本实施例在划分用户权限时,根据各用户权限的不同,提供不同的数据权限和菜单权限,使数据满足“有限公开”的原则,即:只有授权用户才能搜索到授权允许访问的信息,从而有效保障数据的安全性。

下面对本申请实施例提供的一种用户权限配置装置进行介绍,下文描述的一种用户权限配置装置与上文描述的一种用户权限配置方法可以相互参照。

参见图3所示,本申请实施例公开了一种用户权限配置装置,包括:

生成模块301,用于根据用户选择的数据权限生成用户数据权限序列,并根据用户选择的菜单权限生成用户菜单权限序列;

对比模块302,用于对比用户数据权限序列与任一个角色数据权限特征,以及用户菜单权限序列与任一个角色菜单权限特征,以确定用户所属的角色域;

判断模块303,用于分别判断用户数据权限序列和用户菜单权限序列是否超出角色域的权限范围;

配置模块304,用于若用户数据权限序列和用户菜单权限序列未超出角色域的权限范围,则存储用户数据权限序列和用户菜单权限序列,并生成包括用户数据权限序列和用户菜单权限序列的权限配置结果。

在一种具体实施方式中,数据权限包括任一字段对应的权限属性。

在一种具体实施方式中,若用户数据权限序列为角色数据权限特征的子集,则确定用户属于角色数据权限特征对应的角色域;否则,确定用户不属于角色数据权限特征对应的角色域;

若用户菜单权限序列为角色菜单权限特征的子集,则确定用户属于角色菜单权限特征对应的角色域;否则,确定用户不属于角色菜单权限特征对应的角色域。

在一种具体实施方式中,判断模块具体用于:

判断用户数据权限序列是否超出角色数据权限特征对应的角色域的权限范围;

判断用户菜单权限序列是否超出角色菜单权限特征对应的角色域的权限范围。

在一种具体实施方式中,配置模块具体用于:

基于用户数据权限序列和用户菜单权限序列生成并存储查询语句。

在一种具体实施方式中,还包括:

访问模块,用于若接收到用户访问请求,则根据用户菜单权限序列显示菜单功能,根据用户数据权限序列查询并显示访问数据。

在一种具体实施方式中,还包括:

提示模块,用于若用户数据权限序列和/或用户菜单权限序列超出角色域的权限范围,则生成包括超范围提示消息的用户的权限配置结果。

其中,关于本实施例中各个模块、单元更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

可见,本实施例提供了一种用户权限配置装置,该装置实现了用户权限的自定义选择、自动审核和配置,提高了配置效率;同时,配置用户权限时,综合考虑了数据权限和菜单权限,因此可保障数据的安全性以及可靠性。

下面对本申请实施例提供的一种用户权限配置设备进行介绍,下文描述的一种用户权限配置设备与上文描述的一种用户权限配置方法及装置可以相互参照。

参见图4所示,本申请实施例公开了一种用户权限配置设备,包括:

存储器401,用于保存计算机程序;

处理器402,用于执行所述计算机程序,以实现上述任意实施例公开的方法。

下面对本申请实施例提供的一种可读存储介质进行介绍,下文描述的一种可读存储介质与上文描述的一种用户权限配置方法、装置及设备可以相互参照。

一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的用户权限配置方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。

本申请涉及的“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法或设备固有的其它步骤或单元。

需要说明的是,在本申请中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。

本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

相关技术
  • 一种用户权限配置方法、装置、设备及可读存储介质
  • 用户权限确定方法、装置、电子设备及可读存储介质
技术分类

06120112375307