目录树的权限确定方法、装置、存储介质及电子设备制造方法及图纸

技术编号:35863914 阅读:17 留言:0更新日期:2022-12-07 10:55
本申请公开了一种目录树的权限确定方法、装置、存储介质及电子设备。涉及大数据技术领域,该方法包括:读取目录树中的目录数据,根据目录数据生成目录树的有向节点图信息;在第一节点的节点深度与第二节点的节点深度相同的情况下,且第一节点与第二节点不同时,通过二分法分别对第一节点的节点深度与第二节点的节点深度按照相同步数进行调整;若调整后的第一目标节点的节点深度与调整后的第二目标节点的节点深度小于预设节点深度时,确定第一节点携带的权限与第二节点携带的权限为目标根节点携带的预设权限。通过本申请,解决了相关技术中在目录树中存在大量目录数据的情况下,目录数据的权限继承计算效率较低的问题。目录数据的权限继承计算效率较低的问题。目录数据的权限继承计算效率较低的问题。

【技术实现步骤摘要】
目录树的权限确定方法、装置、存储介质及电子设备


[0001]本申请涉及大数据
,具体而言,涉及一种目录树的权限确定方法、装置、存储介质及电子设备。

技术介绍

[0002]在我行的各类后台系统中,都涉及到权限管理。这是系统中一个重要的组成部分,其主要目的是对整个后台管理系统进行权限的控制,避免因权限控制缺失或者操作不当引发的风险问题。
[0003]一个后台系统通常有各类功能,一些功能下会涉及元数据管理,通常会使用目录树对这些元数据进行分类划分。用户可以在目录树中的某个目录下新建子目录或者新建元数据,也可以对某个目录或者元数据进行修改或删除操作。一些对互联网发布信息的后台系统权限管理尤为严格,不同的用户对于不同功能下的不同目录都会有各不相同的权限,权限会包括新增、修改、删除、各层级审批、发布。以此确保发布出去的内容都能够由对应的专人采编,并经过专人审批发布。
[0004]不同的业务功能,其下的目录数量会有几个到几十万不等。若需要对每个目录单独赋权,用户工作量会巨大。所以通常会希望若某个用户对目录a有某类权限qa,则希望该用户对该目录下所有子孙目录都可以有这类权限。若对目录a下某个子孙目录b又单独赋了另外的权限qb,则此时希望对目录b下的子孙目录,能有权限qb而不再是权限qa。
[0005]可以发现,当目录树中的目录数量多,且用户对目录树中单独目录赋予的权限也多时,如果用传统的遍历的方式去计算权限,会导致查询超时,相关业务功能完全无法使用。
[0006]针对相关技术中的上述问题,目前尚未提出有效的解决方案。

技术实现思路

[0007]本申请的主要目的在于提供一种目录树的权限确定方法、装置、存储介质及电子设备,以解决相关技术中在目录树中存在大量目录数据的情况下,目录数据的权限继承计算效率较低的问题。
[0008]为了实现上述目的,根据本申请的一个方面,提供了一种目录树的权限确定方法。该方法包括:读取目录树中的目录数据,其中,目录数据至少包括:子目标序号、父目录序号、目录名称;根据目录数据生成目录树的有向节点图信息,其中,有向节点图信息中至少存在一个目标根节点携带有预设权限;判断有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同,其中,第一节点的节点深度为第一节点与第一节点对应的目标根节点之间的距离,第二节点的节点深度为第二节点与第二节点对应的目标根节点之间的距离;在第一节点的节点深度与第二节点的节点深度相同的情况下,且第一节点与第二节点不同时,通过二分法分别对第一节点的节点深度与第二节点的节点深度按照相同步数进行调整,得到调整后的第一目标节点与调整后的第二目标节点;若调整后的第一目标节
点的节点深度与调整后的第二目标节点的节点深度小于预设节点深度时,确定第一节点携带的权限与第二节点携带的权限为目标根节点携带的预设权限。
[0009]进一步地,根据目录数据生成目录树的有向节点图信息包括:对目录数据中的目标目录序号赋予预设权限;根据预设权限生成目录树的有向节点图信息。
[0010]进一步地,在判断有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同之后,方法还包括:若有向节点图信息中的第一节点的节点深度与第二节点的节点深度不相同,获取第一节点的节点深度与第二节点的节点深度;通过二分法调整第一节点的节点深度和/或第二节点的节点深度,以使第一节点的节点深度与第二节点的节点深度相同。
[0011]进一步地,在第一节点的节点深度大于第二节点的节点深度时,通过二分法调整第一节点的节点深度,以使第一节点的节点深度与第二节点的节点深度相同包括:通过二分法将第一节点的节点深度按照预设步数进行调整,得到调整后的第一节点;判断调整后的第一节点的节点深度是否大于第二节点的节点深度;若调整后的第一节点的节点深度大于第二节点的节点深度,执行通过二分法将调整后的第一节点的节点深度按照预设步数进行调整的步骤,以使第一节点的节点深度与第二节点的节点深度相同。
[0012]进一步地,若调整后的第一目标节点的节点深度与调整后的第二目标节点的节点深度小于预设节点深度时,确定第一节点携带的权限与第二节点携带的权限为目标根节点携带的预设权限包括:若调整后的第一目标节点的节点深度与调整后的第二目标节点的节点深度小于预设节点深度时,则调整后的第一目标节点的目标前驱节点与调整后的第二目标节点的目标前驱节点相同;同时,确定目标前驱节点为目标根节点,并确定第一节点携带的权限与第二节点携带的权限为目标根节点携带的预设权限。
[0013]进一步地,在判断有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同之后,方法还包括:若有向节点图信息中的第一节点的节点深度与第二节点的节点深度相同,且第一节点与第二节点相同时,将第二节点携带的权限作为调整后的第一节点的权限。
[0014]进一步地,在判断有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同之前,方法还包括:获取第一节点的前驱节点与第二节点的前驱节点;若第一节点的前驱节点与第二节点的前驱节点分别被赋予对应的权限,则确定第一节点携带的权限为第一节点的前驱节点携带的权限,确定第二节点携带的权限为第二节点的前驱节点携带的权限。
[0015]为了实现上述目的,根据本申请的另一方面,提供了一种目录树的权限确定装置。该装置包括:读取单元,用于读取目录树中的目录数据,其中,目录数据至少包括:子目标序号、父目录序号、目录名称;生成单元,用于根据目录数据生成目录树的有向节点图信息,其中,有向节点图信息中至少存在一个目标根节点携带有预设权限;判断单元,用于判断有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同,其中,第一节点的节点深度为第一节点与第一节点对应的目标根节点之间的距离,第二节点的节点深度为第二节点与第二节点对应的目标根节点之间的距离;第一调整单元,用于在第一节点的节点深度与第二节点的节点深度相同的情况下,且第一节点与第二节点不同时,通过二分法分别对第一节点的节点深度与第二节点的节点深度按照相同步数进行调整,得到调整后的第
一目标节点与调整后的第二目标节点;第一确定单元,用于若调整后的第一目标节点的节点深度与调整后的第二目标节点的节点深度小于预设节点深度时,确定第一节点携带的权限与第二节点携带的权限为目标根节点携带的预设权限。
[0016]通过本申请,采用以下步骤:读取目录树中的目录数据,其中,目录数据至少包括:子目标序号、父目录序号、目录名称;根据目录数据生成目录树的有向节点图信息,其中,有向节点图信息中至少存在一个目标根节点携带有预设权限;判断有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同,其中,第一节点的节点深度为第一节点与第一节点对应的目标根节点之间的距离,第二节点的节点深度为第二节点与第二节点对应的目标根节点之间的距离;在第一节点的节点深度与第二节点的节点深度相同的情况下,且第一节点与第二节点不同时,通过二分法分别对第一节点的节点深度与第二节点的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种目录树的权限确定方法,其特征在于,包括:读取目录树中的目录数据,其中,所述目录数据至少包括:子目标序号、父目录序号、目录名称;根据所述目录数据生成所述目录树的有向节点图信息,其中,所述有向节点图信息中至少存在一个目标根节点携带有预设权限;判断所述有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同,其中,所述第一节点的节点深度为所述第一节点与所述第一节点对应的所述目标根节点之间的距离,所述第二节点的节点深度为所述第二节点与所述第二节点对应的目标根节点之间的距离;在所述第一节点的节点深度与所述第二节点的节点深度相同的情况下,且所述第一节点与所述第二节点不同时,通过二分法分别对所述第一节点的节点深度与所述第二节点的节点深度按照相同步数进行调整,得到调整后的第一目标节点与所述调整后的第二目标节点;若所述调整后的第一目标节点的节点深度与所述调整后的第二目标节点的节点深度小于预设节点深度时,确定所述第一节点携带的权限与所述第二节点携带的权限为所述目标根节点携带的所述预设权限。2.根据权利要求1所述的方法,其特征在于,根据所述目录数据生成所述目录树的有向节点图信息包括:对所述目录数据中的目标目录序号赋予预设权限;根据所述预设权限生成所述目录树的有向节点图信息。3.根据权利要求1所述的方法,其特征在于,在判断所述有向节点图信息中的第一节点的节点深度与第二节点的节点深度是否相同之后,所述方法还包括:若所述有向节点图信息中的所述第一节点的节点深度与所述第二节点的节点深度不相同,获取所述第一节点的节点深度与第二节点的节点深度;通过二分法调整所述第一节点的节点深度和/或第二节点的节点深度,以使所述第一节点的节点深度与第二节点的节点深度相同。4.根据权利要求3所述的方法,其特征在于,在所述第一节点的节点深度大于所述第二节点的节点深度时,通过二分法调整所述第一节点的节点深度,以使所述第一节点的节点深度与第二节点的节点深度相同包括:通过所述二分法将所述第一节点的节点深度按照预设步数进行调整,得到调整后的第一节点;判断所述调整后的第一节点的节点深度是否大于所述第二节点的节点深度;若所述调整后的第一节点的节点深度大于所述第二节点的节点深度,执行通过所述二分法将所述调整后的第一节点的节点深度按照预设步数进行调整的步骤,以使所述第一节点的节点深度与第二节点的节点深度相同。5.根据权利要求1所述的方法,其特征在于,若所述调整后的第一目标节点的节点深度与所述调整后的第二目标节点的节点深度小于预设节点深度时,确定所述第一节点携带的权限与所述第二节点携带的权限为所述目标根节点携带的所述预设权限包括:若所述调整后的第一目标节点的节点深度与所述调整后的第二目标节点...

【专利技术属性】
技术研发人员:杨喆炜王敏狄程卢宏
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1