CN114239060A - 数据获取方法、装置、电子设备及存储介质 - Google Patents
数据获取方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114239060A CN114239060A CN202111527148.7A CN202111527148A CN114239060A CN 114239060 A CN114239060 A CN 114239060A CN 202111527148 A CN202111527148 A CN 202111527148A CN 114239060 A CN114239060 A CN 114239060A
- Authority
- CN
- China
- Prior art keywords
- judgment
- authority
- node
- permission
- data table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 238000012795 verification Methods 0.000 claims abstract description 14
- 230000015654 memory Effects 0.000 claims description 22
- 238000004590 computer program Methods 0.000 claims description 13
- 238000001514 detection method Methods 0.000 claims description 8
- 238000012163 sequencing technique Methods 0.000 claims description 8
- 238000007499 fusion processing Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例公开了一种数据获取方法、装置、电子设备及存储介质,应用于数据处理技术领域。其中方法包括:获取每个业务数据表的业务属性,并根据业务属性与用户标识之间的关联关系确定多个权限判断节点和对应的权限判断规则,并构建权限判断树,接收数据获取指令,确定数据表标识所指示的待查询数据表,若根据权限判断树和用户终端的所属用户标识确定用户终端具有对待查询数据表的查询权限,获取业务数据库对应的公共查询账号,根据公共查询账号建立业务数据库与电子设备的连接关系,基于连接关系从待查询数据表中获取目标数据,并发送用户终端。采用本申请,可以提高权限校验灵活性。本申请涉及区块链技术,如可从区块链获取公共查询账号。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种数据获取方法、装置、电子设备及存储介质。
背景技术
目前,由于数据库中存储的数据表是各式各样的,因此需要针对数据库进行查询权限的校验。现有的权限校验通常是在数据库端部署不同权限等级的查询账号,只有申请了查询账号的用户才能进行数据查询。然而该方式十分固定不灵活,因此如何提高权限校验灵活性成为一个亟待解决的问题。
发明内容
本申请实施例提供了一种数据获取方法、装置、电子设备及存储介质,可以优化针对数据库的查询权限校验,以及提高权限校验的灵活性。
一方面,本申请实施例提供了一种数据获取方法,应用于电子设备,该方法包括:
获取多个业务数据表中每个业务数据表的业务属性;所述多个业务数据表均存储于业务数据库中;
根据所述每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定所述多个权限判断节点中每个权限判断节点的权限判断规则;所述权限判断规则用于对所述用户标识的查询权限进行判断;
基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树;
接收用户终端发送的数据获取指令;所述数据获取指令包括数据表标识、数据获取条件,以及所述用户终端的所属用户标识;
从所述多个业务数据表中确定所述数据表标识所指示的待查询数据表;
若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限,获取所述业务数据库对应的公共查询账号;
根据所述公共查询账号建立所述业务数据库与所述电子设备之间的连接关系,并基于所述连接关系从所述待查询数据表中获取满足所述数据获取条件的目标数据;
将所述目标数据发送至所述用户终端。
一方面,本申请实施例提供了一种数据获取方法,该装置包括:
获取模块,用于获取多个业务数据表中每个业务数据表的业务属性;所述多个业务数据表均存储于业务数据库中;
确定模块,用于根据所述每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定所述多个权限判断节点中每个权限判断节点的权限判断规则;所述权限判断规则用于对所述用户标识的查询权限进行判断;
处理模块,用于基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树;
接收模块,用于接收用户终端发送的数据获取指令;所述数据获取指令包括数据表标识、数据获取条件,以及所述用户终端的所属用户标识;
所述确定模块,还用于从所述多个业务数据表中确定所述数据表标识所指示的待查询数据表;
所述确定模块,还用于若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限,获取所述业务数据库对应的公共查询账号;
所述处理模块,还用于根据所述公共查询账号建立所述业务数据库与所述电子设备之间的连接关系,并基于所述连接关系从所述待查询数据表中获取满足所述数据获取条件的目标数据;
所述处理模块,还用于将所述目标数据发送至所述用户终端。
一方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,其中,存储器用于存储计算机程序,该计算机程序包括程序指令,处理器被配置用于调用该程序指令,以执行上述方法中的部分或全部步骤。
一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时,用于执行上述方法中的部分或全部步骤。
本申请实施例中,可以获取多个业务数据表的业务属性,根据每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,确定每个权限判断节点的权限判断规则,基于该权限判断规则构建权限判断树,接收用户终端发送的数据获取指令,并确定待查询数据表,若根据权限判断树以及所述所属用户标识确定用户终端具有查询权限,获取业务数据库对应的公共查询账号,根据公共查询账号建立连接关系,基于连接关系从待查询数据表中获取目标数据,并发送至用户终端。通过上述方法,可以结合业务数据表的业务属性确定权限判断树,便于对查询权限的管理,提高对查询权限的校验灵活性,此外通过公共查询账号可以避免业务数据库存储大量查询账号,防止业务数据库端直接由大量查询账号进行访问时业务数据库发生异常,提高数据获取效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种应用架构示意图;
图2为本申请实施例提供的一种数据获取方法的流程示意图;
图3为本申请实施例提供的一种数据获取方法的流程示意图;
图4为本申请实施例提供的一种输出权限判断树的场景示意图;
图5为本申请实施例提供的一种数据获取流程的示意图;
图6为本申请实施例提供的一种数据获取装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例提出的数据获取方法实现于电子设备,该电子设备可以为终端设备或服务器。其中,终端设备可以为智能手机、平板电脑、笔记本电脑、台式计算机等。服务器可以是独立的服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。本申请涉及区块链技术,电子设备可将涉及的数据如针对业务数据库的权限判断树等写入区块链中,以便于电子设备可以在区块链上获取所需信息,如在区块链上根据针对业务数据库的权限判断树确定出用户终端是否具有查询权限。
请参见图1,图1为本申请实施例提供的一种应用架构示意图,可以通过该应用架构执行本申请所提出的数据获取方法。具体的,图1可以包括电子设备、业务数据库端和用户终端。其中,电子设备可以通过执行本申请的技术方案,获取业务数据库中每个业务数据表的业务属性,并基于业务属性与用户标识之间的关联关系确定多个权限判断节点以及权限判断节点的权限判断规则,基于权限判断规则生成针对业务数据库的权限判断树,当接收到用户终端发送的数据获取指令时,根据权限判断树以及所述所属用户标识确定用户终端是否存在针对数据获取指令所指示的待查询数据表的查询权限,若存在,则获取业务数据库对应的公共查询账号,并根据该公共查询账号建立业务数据库与电子设备之间的连接关系,基于该连接关系从待查询数据表获取目标数据,并目标数据发送至用户终端。可以理解的是,图1中业务数据库端所在设备与电子设备为不同的设备,此时的连接关系为电子设备与外部的业务数据库的连接关系。可选的,业务数据库端也可以位于电子设备中,此时的连接关系为在电子设备与内部的业务数据库的连接关系。此处不作限制。
可以理解的是,图1只是示例性地表征本申请技术方案所提出的应用架构,并不对本申请技术方案的具体架构进行限定,即本申请技术方案还可以提供其他形式的应用架构。
在一些实施例中,电子设备可以根据实际的业务需求,执行该数据获取方法,以对查询权限的校验灵活性。本申请技术方案可以应用于任意数据库的查询权限管理场景中。电子设备可以在所应用的场景中,确定出针对业务数据库的权限判断树,并基于权限判断树确定用户终端是否具有查询权限,若具有,则利用业务数据库对应的公共查询账号获取目标数据,提高数据获取效率。
可以理解的是,上述场景仅是作为示例,并不构成对于本申请实施例提供的技术方案的应用场景的限定,本申请的技术方案还可应用于其他场景。例如,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
基于上述的描述,本申请实施例提出了一种数据获取方法,该方法可以由上述提及的电子设备来执行。如图2所示,本申请实施例的数据获取方法的流程可以包括如下:
S201、获取多个业务数据表中每个业务数据表的业务属性。
其中,多个业务数据表均存储于业务数据库中。
在一些实施例中,该业务数据表的业务属性可以在生成该业务数据表时由相关业务人员直接指定的,也可以是由电子设备根据业务数据表的表信息获取到的。可选的,该业务属性可以包括业务数据表的创建对象和/或业务数据表所存放数据的数据属性,即可以在生成该业务数据表的时候由相关业务人员设置该业务数据表的业务属性(创建对象和/或数据属性,创建对象可以为相关业务人员也可以不为相关业务人员);也可以是,在生成该业务数据表时生成业务数据表的表信息,电子设备基于该表信息获取到对应的业务属性。具体的业务属性可以由相关业务人员根据实际业务场景设置。其中,创建对象可以包括个人用户和非个人用户,该个人用户指的是由任意具有查询账号(该查询账号用于建立用户终端和电子设备之间的连接关系)的用户创建的业务数据表,非个人用户指的是非用户创建的业务数据表,例如任意业务系统创建的业务数据表。以及数据属性与实际的业务场景相关,例如数据属性可以是系统日志、财务数据等等,此处对数据属性不做限制。
S202、根据每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定多个权限判断节点中每个权限判断节点的权限判断规则。
其中,该权限判断规则可以用于对用户标识的查询权限进行判断。
在一些实施例中,权限判断节点可以包括两种类型,一种类型为分支节点,一种权限节点。分支节点表示为存在至少两个后置权限判断节点的权限判断节点,后续,可以通过该分支节点的输出从至少两个后置权限判断节点选择出一个目标后置权限判断节点继续进行查询权限的判断。权限节点表示有一个或无后置权限判断节点的权限判断节点,后续可以通过该权限节点的输出确定用户终端是否具有查询权限。以及,业务属性与用户标识之间的关联关系可以有多种,具体可由相关业务人员根据实际业务场景确定。
在一些实施例中,业务属性可以包括业务数据表的创建对象属性,此时可以包括类型为分支节点的权限判断节点以及类型为权限节点的权限判断节点,业务属性与用户标识的关联关系包括业务数据表的创建对象标识与用户标识的匹配关系,如可以生成用于基于创建对象标识确定业务数据表的类型,以根据该类型判断是否需要确定创建对象标识和用户标识之间的匹配关系的分支节点,以及生成确定创建对象标识和用户标识之间的匹配关系的结果(匹配或不匹配,又称为一致或不一致性)的权限节点。即可以根据业务数据表的创建对象标识与用户标识的匹配关系生成权限判断节点,该权限判断节点用于进行待查询数据表的创建对象标识与用户标识是否存在匹配关系的判断,以及生成的该权限判断节点的权限判断规则可以是获取待查询数据表的创建对象标识,并根据待查询数据表的创建对象标识确定待查询数据表的类型,后续可以根据待查询数据表的类型确定对应的后置权限判断节点。例如,创建对象标识为个人用户,则待查询数据表的类型为用户表,此时该用户表均由创建该待查询数据表的用户查询,即该用户的用户标识应与创建对象标识一致;创建对象为非个人用户,则待查询数据表的类型为非用户表,可以由所有用户查询,即此时的创建对象标识与用户标识之间不存在匹配关系,则表示不需要确定创建对象标识和用户标识之间的匹配关系。例如,设权限判断节点A为根据待查询数据表的创建对象标识确定待查询数据表的类型的分支节点,以及该权限判断节点A的后置权限判断节点为权限判断节点B和权限判断节点C,权限判断节点B为与用户表的权限判断相关的节点,权限判断节点C为与非用户表的权限判断相关的节点,若在权限判断节点A,根据对应的权限判断规则获取待查询数据表的创建对象,并判断该创建对象为个人用户还是非个人用户,若创建对象为个人用户时,则待查询数据表的类型为用户表,此时确定的目标后置权限节点为权限判断节点B,该权限判断节点B可以为用于确定创建对象标识和用户标识之间的匹配关系的结果的节点;若创建对象为非个人用户时,则待查询数据表的类型为非用户表,此时确定的目标后置权限节点为权限判断节点C。
在一些实施例中,业务属性可以包括业务数据表所存储数据的数据属性,例如财务数据、系统日志数据等,此时可以包括类型为权限节点的权限判断节点,业务属性与用户标识的关联关系包括业务数据表的数据属性与用户标识的约束关系,如可以生成用于确定数据属性与用户标识之间是否满足约束关系的权限节点。即可以根据业务数据表的数据属性与用户标识之间的约束关系生成权限判断节点,该权限判断节点用于进行数据属性与用户标识对应的用户信息之间的约束关系的判断,以及生成的该权限判断节点的权限判断规则可以是获取待查询数据表与用户标识对应的用户信息之间的约束关系,以及获取此时对待查询数据表进行数据获取的用户终端的所属用户标识对应的目标用户信息,判断该目标用户信息是否满足该约束关系所指示的条件,并输出权限判断结果。该数据属性与用户标识之间的约束关系表示满足指定条件的用户标识才可以查询为该数据属性的业务数据表。该约束关系可以由相关业务人员(或创建对象)根据实际业务场景设置。其中,当只有在数据属性存在约束关系时,会生成对应的权限判断节点,以及不同数据属性所存在的约束关系可以相同也可以是不相同,当存在重复的约束关系时,仅生成一个权限判断节点。
例如,若待查询数据表的数据属性为财务数据,以及该数据属性与用户标识之间的约束关系为只有用户标识对应的用户信息表示为财务部门的工作人员才能查询为财务数据的业务数据表,因此针对该数据属性所生成的权限判断节点的权限判断规则可以是,获取此时对待查询数据表进行数据获取的用户终端所属用户标识的目标用户信息以确定所属用户的所在部门,并对比该所在部门和数据属性对应的约束关系所指示的部门的一致性,若一致,确定在该权限判断节点下,该用户终端具有对待查询数据表的查询权限;若不一致,则确定在该权限判断节点下,该用户终端不具有对待查询数据表的查询权限。
可以理解的是,权限判断节点还可以包括除上述示例以外的多种分支节点和多种权限节点,多种分支节点之间(和多种权限节点之间)的权限判断规则可以相同也可以不相同。分支节点或权限节点可根据具体的业务场景确定。
S203、基于每个权限判断节点的权限判断规则构建针对业务数据库的权限判断树。
在一些实施例中,电子设备可以获取每个权限判断节点之间的判断逻辑关系,可以通过该判断逻辑关系确定每个权限判断节点的判断顺序,即可以得到每个权限判断节点的前置权限判断节点和后置权限判断节点,并根据该每个权限判断节点之间的判断逻辑关系和每个权限判断节点的权限判断规则构建针对业务数据库的权限判断树。例如,权限判断节点A与权限判断节点B之间的判断逻辑关系表示了先进行针对权限判断节点A的权限判断,再进行针对权限判断节点B的权限判断,因此权限判断节点A为权限判断节点B的前置权限判断节点,即判断顺序为权限判断节点A→权限判断节点B。其中,每个权限判断节点之间的判断逻辑顺序可以由相关业务人员根据经验值设置,也可以由电子设备利用机器学习技术并根据已构建权限判断树的其他业务数据库所涵盖的权限判断节点之间的判断逻辑关系进行学习,以确定上述每个权限判断节点之间的判断逻辑关系。
在一些实施例中,在构建权限判断树后,可以将每个业务数据表划分到关联的权限判断节点中,即每个业务数据表均可对应一个权限判断节点,一个权限判断节点可以对应有一个或多个业务数据表。电子设备可以基于权限判断节点与业务数据表的对应关系,创建权限判断节点与业务数据库中的业务数据表之间的索引,即电子设备在确定用户终端具有对待查询数据表的查询权限时,从与待查询数据表关联的权限判断节点具有索引的业务数据表中查询到待查询数据表,并获取目标数据,即根据所创建的索引,在业务数据库从待查询数据表中获取到目标数据,而无需在从整个业务数据库中查询数据,提高数据查询效率。。
在一些实施例中,用户终端若想要查询一个业务数据表时,只有在该业务数据表所关联的权限判断节点,以及与该关联的权限判断节点具有依赖关系的前置权限判断节点中确定针对用户终端的权限判断结果满足预设权限条件时,用户终端才能查询该关联的权限判断节点下的业务数据表。电子设备将每个业务数据表划分到关联的权限判断节点可以是,根据权限判断树,依次确定每个权限判断节点的后置权限判断节点是否存在针对业务数据表的权限判断,若不存在,则将该权限判断节点作为该业务数据表关联的权限判断节点;若存在,则继续执行上述步骤。即以权限判断树的第i个权限判断节点为例,i为正整数,确定第i个权限判断节点的后置权限判断节点(设该后置权限判断节点为第j个权限判断节点,j为大于i的正整数)是否存在针对业务数据表的权限判断,若不存在,则将第i个权限判断节点作为该业务数据表关联的权限判断节点;若存在,则确定第j个权限判断节点的后置权限判断节点的是否存在针对业务数据表的权限判断,从而得到该业务数据表划分到的关联的权限判断节点。
例如,权限判断节点A的后置权限判断节点只有权限判断节点B,确定权限判断节点B是否存在针对业务数据表A的权限判断,如设权限判断节点B是电子设备基于业务数据表A的业务属性A生成的,因此权限判断节点B存在针对业务数据表A的业务属性A的权限判断,因此进一步确定权限判断节点B的后置权限判断节点是否存在针对业务数据表A的权限判断;如设权限判断节点B是电子设备基于业务数据表B的业务属性B生成的,因此权限判断节点B不存在针对业务数据表A的业务属性A的权限判断(存在针对业务数据表B的业务属性B的权限判断),因此权限判断节点A为业务数据表A关联的权限判断节点。
S204、接收用户终端发送的数据获取指令。
其中,数据获取指令包括数据表标识、数据获取条件,以及用户终端的所属用户标识。
在一些实施例中,该数据获取指令可以是由用户终端编写并执行查询脚本(如SQL(Structured Query Language,结构化查询语言)脚本)得到的,也可以是由用户终端通过数据查询页面配置得到的;该数据表标识为用户终端所属用户想要查询的待查询数据表的标识。数据表标识可以为业务数据表的表名或者表ID等。以及用户终端可以预先向电子设备申请用户终端所属用户的专属账号,并利用该专属账号连接电子设备以发送数据获取指令。电子设备可以将每个用户的用户信息(所属用户标识、所属用户标识的权限期限等)存储于本地,也可以存储于区块链中,可用于后续权限的判断中。该所属用户标识可以表示用户终端的所属用户的专属账号。
S205、从多个业务数据表中确定数据表标识所指示的待查询数据表。
在一些实施例中,电子设备可以根据数据表标识从该多个业务数据表中确定出所指示的待查询数据表,该数据表标识可以为一个或多个,相应地,待查询数据表可以为一个或多个。
S206、若根据权限判断树以及所属用户标识确定用户终端具有对待查询数据表的查询权限,获取业务数据库对应的公共查询账号。
在一些实施例中,电子设备可以根据权限判断树以及所属用户标识确定用户终端是否具有对待查询数据表的查询权限,若确定用户终端具有查询权限时,则根据数据获取指令的指示,进行数据查询。电子设备根据权限判断树确定用户终端是否具有对待查询数据表的查询权限可以是,从权限判断树中确定出针对待查询数据表的目标权限判断路径,根据目标权限判断路径中的权限判断节点的权限判断规则依次对所属用户标识进行权限判断,得到权限判断结果,该权限判断结果指示了用户终端是否具有对待查询数据表的查询权限。其中,此部分的具体实施过程可以参见下述实施例中的详细描述。
在一些实施例中,电子设备可以获取业务数据库对应的公共查询账号,该公共查询账号可以还是电子设备此时从业务数据库端获取的,也可以是预先存储并从本地获取的,该公共查询账号具有可以查询任何业务数据表的权限,该公共查询账号只能由电子设备调用以连接业务数据库,提高数据安全性。通过公共查询账号可以使得业务数据库端无需部署大量用户的查询账号和权限信息,降低业务数据库端的负担。
S207、根据公共查询账号建立业务数据库与电子设备之间的连接关系,并基于连接关系从待查询数据表中获取满足数据获取条件的目标数据。
在一些实施例中,电子设备可以利用公共查询账号登录该业务数据库,以建立与业务数据库之间的连接关系,并获取待查询数据表与关联的权限判断节点的索引,基于连接关系发送包含数据获取条件和索引的数据获取请求至业务数据库,使得业务数据库根据索引确定待查询数据表的所在位置,并从待查询数据表中获取到满足数据获取条件的目标数据,电子设备接收业务数据库返回的该目标数据。
S208、将目标数据发送至用户终端。
在一些实施例中,电子设备若确定用户终端具有对待查询数据表的查询权限并获取到目标数据之后,将该目标数据发送至用户终端;或者,若确定用户终端不具有对待查询数据表的查询权限,则生成用于表示不具有查询权限的错误提示信息,并将该错误提示信息发送至用户终端。
本申请实施例中,电子设备可以获取多个业务数据表中每个业务数据表的业务属性,根据每个业务数据表的业务属性确定多个权限判断节点,并确定多个权限判断节点中每个权限判断节点的权限判断规则,基于每个权限判断节点的权限判断规则构建针对业务数据库的权限判断树,接收用户终端发送的数据获取指令,从多个业务数据表中确定数据表标识所指示的待查询数据表,若根据权限判断树以及待查询数据表的业务属性确定用户终端具有对待查询数据表的查询权限,获取业务数据库对应的公共查询账号,根据公共查询账号建立业务数据库与电子设备之间的连接关系,并基于连接关系从待查询数据表中获取满足数据获取条件的目标数据,将目标数据发送至用户终端。通过实施上述方法,可以结合业务数据表的业务属性确定权限判断树,便于对查询权限的管理,提高对查询权限的校验灵活性,此外通过公共查询账号可以避免业务数据库存储大量查询账号,防止业务数据库端直接由大量查询账号进行访问时业务数据库发生异常,提高数据获取效率。
请参见图3,图3为本申请实施例提供的一种数据获取方法的流程示意图,该方法可以由上述提及的电子设备执行。如图3所示,本申请实施例中数据获取方法的流程可以包括如下:
S301、获取多个业务数据表中每个业务数据表的业务属性。
S302、根据每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定多个权限判断节点中每个权限判断节点的权限判断规则。其中,步骤S301-S302的具体实施方式可以参见上述实施例的相关描述,此处不再赘述。
S303、基于每个权限判断节点的权限判断规则构建针对业务数据库的权限判断树。
在一个可能的实施方式中,电子设备基于每个权限判断节点的权限判断规则构建针对业务数据库的权限判断树具体可以是,获取每个权限判断节点之间的判断逻辑关系,根据每个权限判断节点之间的判断逻辑关系对多个权限判断节点进行划分,得到至少一个节点集合,该节点集合包括至少一个权限判断节点,以及不同节点集合可以具有相同的权限判断节点,基于每个权限判断节点的权限判断规则生成至少一个节点集合中每个节点集合对应的初始权限判断路径,该初始权限判断路径包含权限判断节点以及对应的权限判断规则;对每个节点集合对应的初始权限判断路径进行融合处理,得到权限判断树。
其中,电子设备根据每个权限判断节点之间的判断逻辑关系对多个权限判断节点进行划分,得到至少一个节点集合可以是,多个权限判断节点为N个,将每个权限判断节点作为一个初始节点集合,得到N个初始节点集合,确定第一个权限判断节点与其余未划分的N-1个权限判断节点中的关联权限判断节点(可以为一个或多个)是否具有判断逻辑关系,若存在,则将第一个权限判断节点所在的初始节点集合分别添加到每个关联权限判断节点所在的初始节点集合中,并将第一权限判断节点此前所在的初始节点集合删除,得到N-1个初始节点集合,并对后续权限判断节点继续执行上述方法,得到最终的至少一个节点集合。
例如,权限判断节点为4个,将该4个权限判断节点分别作为一个初始节点集合,若确定第一个权限判断节点与其余未划分的3个权限判断节点中的第二个权限判断节点(关联权限判断节点)具有判断逻辑关系,则将第一个权限判断节点所在的初始节点集合添加到第二个权限判断节点所在的初始节点集合,并将第一个权限判断节点此前所在的初始节点集合删除;以及,若确定第二个权限判断节点与其余未划分的2个权限判断节点中的第三个权限判断节点和第四个权限判断节点(关联权限判断节点)具有判断逻辑关系,则将第二个权限判断节点所在的初始节点集合(包括第一个权限判断节点和第二个权限判断节点)添加到第三个权限判断节点所在的初始节点集合以及第四个权限判断节点所在的初始节点集合,并将第二个权限判断节点此前所在的初始节点集合(包括第一个权限判断节点和第二个权限判断节点)删除,继续对第三个权限判断节点和第四个权限判断节点执行上述步骤,得到最终的至少一个节点集合,设第三个权限判断节点和第四个权限判断节点不具有判断逻辑关系,因此得到两个节点集合,节点集合1包括第一个权限判断节点、第二个权限判断节点和第三个权限判断节点,节点集合2包括第一个权限判断节点、第二个权限判断节点和第四个权限判断节点。
在一些实施例中,目标节点集合为至少一个节点集合中的任一节点集合,电子设备基于每个权限判断节点的权限判断规则生成至少一个节点集合中每个节点集合对应的初始权限判断路径具体可以是,基于目标节点集合包括的至少一个权限判断节点之间的判断逻辑关系,对目标节点集合包括的至少一个权限判断节点进行排序,根据排序结果和每个权限判断节点的权限判断规则生成目标节点集合对应的初始权限判断路径。特别地,若至少一个权限判断节点中存在相同关系层级的至少两个目标权限判断节点,则获取至少两个目标权限判断节点的重要程度,该相同关系层级的至少两个目标权限判断节点表示具有相同前置权限判断节点的目标权限判断节点,根据至少两个目标权限判断节点的重要程度对至少两个目标权限判断节点进行排序。即一条初始权限判断路径不存在有分支的情况。其中,该每个权限判断节点的重要程度可以由相关业务人员根据经验值设置。对目标节点集合包括的至少一个权限判断节点进行排序即为根据判断逻辑关系确定每个权限判断节点的前置权限判断节点和后置权限判断节点,并根据每个权限判断节点的前置权限判断节点和后置权限判断节点依次进行排序。
在一些实施例中,电子设备对每个节点集合对应的初始权限判断路径进行融合处理,得到权限判断树具体可以是,从每个节点集合对应的初始权限判断路径中确定出待融合节点集合;待融合节点集合包括多个相同的权限判断节点;在每个节点集合对应的初始权限判断路径中,将待融合节点集合包括的权限判断节点进行合并,得到权限判断树。该从每个节点集合对应的初始权限判断路径中确定出待融合节点集合可以是根据权限判断节点的节点标识确定,或者是根据权限判断节点的权限判断规则确定,即将节点标识相同或权限判断规则相同的权限判断节点作为一个待融合节点集合。即在每个节点集合对应的初始权限判断路径中,将相同的权限判断节点进行合并,合并后的多个初始权限判断路径作为权限判断树。
在一些实施例中,电子设备在得到权限判断树时,可以将该权限判断树通过相关业务人员的终端设备进行输出,该相关业务人员可以通过权限判断树确定对业务数据库中的业务数据表的查询权限判断过程,当需要对权限判断树(或查询权限判断)进行修改时,可以通过权限判断树中的权限判断节点进行修改,如新增或删除权限判断节点,或者对权限判断节点对应的权限判断节点进行修改等等,以便于对查询权限的管理。例如,如图4,图4为输出权限判断树的场景示意图;其中,所输出的权限判断树包括多个权限判断节点以及每个权限判断节点的权限判断规则,可以通过触发“编辑”控件进行权限判断节点的修改(如新增/移动/删除等),以及,通过触发权限判断节点查询权限判断节点对应的权限判断规则,并还可以通过触发指定显示区域下的“规则编辑”控件进行对应的权限判断规则的修改,以及通过触发权限判断节点还可以查看权限判断节点所划分的业务数据表,并还可以进一步通过触发指定显示区域下的“数据表编辑”控件,进行所划分的业务数据表的修改(如新增/移动/删除等)。
S304、接收用户终端发送的数据获取指令。
S305、从多个业务数据表中确定数据表标识所指示的待查询数据表。其中,步骤S304-S305的具体实施方式可以参见上述实施例的相关描述,此处不再赘述。
S306、获取待查询数据表关联的权限判断节点。
在一些实施例中,每个业务数据表均具有关联的权限判断节点,以及每个业务数据表在权限判断树中均对应有权限判断路径,只有在该权限判断路径上进行权限判断所得到的权限判断结果满足预设权限条件时,用户终端才具有查询权限。电子设备可以获取待查询数据表关联的权限判断节点,该关联的权限判断节点用于确定针对待查询数据表的权限判断路径。该关联的权限判断节点为针对待查询数据表的权限判断路径中的最后一个权限判断节点。
S307、根据权限判断树和权限判断节点确定针对待查询数据表的目标权限判断路径。
在一些实施例中,电子设备根据权限判断树和权限判断节点确定针对待查询数据表的目标权限判断路径具体可以是,遍历权限判断树直至关联的权限判断节点所在位置,得到遍历结果,根据遍历结果确定针对待查询数据表的目标权限判断路径,即根据遍历结果,将遍历到的权限判断节点所形成的路径作为目标权限判断路径。目标权限判断路径包括至少一个权限判断节点。
S308、若根据目标权限判断路径以及所属用户标识确定用户终端具有对待查询数据表的查询权限,获取业务数据库对应的公共查询账号。
在一些实施例中,电子设备可以依次按照目标权限判断路径包括的权限判断节点的权限判断规则对所属用户标识进行权限判断,得到权限判断结果,并根据该权限判断结果确定用户终端是否具有对待查询数据表的查询权限。若权限判断结果满足预设权限条件时,确定用户终端具有对待查询数据表的查询权限,若不满足,则确定用户终端不具有对待查询数据表的查询权限。
在一些实施例中,若待查询数据表为个人表时,目标权限判断路径中的权限判断节点可以包括针对所属用户标识的验证,即该权限判断节点的权限判断规则包括对所属用户标识的标识一致性验证,因此按照目标权限判断路径包括的权限判断节点的权限判断规则对所属用户标识进行权限判断,得到权限判断结果具体可以是,获取待查询数据表的创建对象标识,对比所属用户标识以及创建对象标识的一致性,得到对比结果,并将该对比结果作为权限判断结果。因此若权限判断结果满足预设权限条件,确定用户终端具有对所述待查询数据表的查询权限具体可以是,若对比结果指示所属用户标识与创建对象标识一致,则确定用户终端具有对待查询数据表的查询权限。即为个人表的待查询数据表只能由创建对象的用户终端进行数据查询。
在一些实施例中,目标权限判断路径中的权限判断节点可以包括针对权限期限的验证,即该权限判断节点的权限判断规则包括对所属用户标识的权限期限验证,因此按照目标权限判断路径包括的权限判断节点的权限判断规则对所属用户标识进行权限判断,得到权限判断结果具体可以是,获取所属用户标识对应的权限期限,并根据权限期限确定所属用户标识的权限有效时间点,对比数据获取指令的检测时间点以及权限有效时间点,得到对比结果,将对比结果作为权限判断结果,因此若权限判断结果满足预设权限条件,确定用户终端具有对所述待查询数据表的查询权限具体可以是,若对比结果指示检测时间段小于或等于权限有效时间点,则确定用户终端具有对待查询数据表的查询权限。即每个用户终端的所属用户均对应的权限期限,用户终端只有在权限期限所指示的权限有效时间点(有效期)内,才能进行数据查询,权限有效时间点由所属用户的专属账号的申请成功时间点和权限期限确定。
可以理解的是,权限判断节点可以有多种,对应的权限判断规则可以有多种,上述仅示例了两种。以及,一个权限判断节点得到一个权限判断结果,若权限判断结果满足预设权限条件时,确定用户终端具有对待查询数据表的查询权限即表示为,若经由目标权限判断路径上的权限判断节点的权限判断规则进行权限判断之后,所得到的至少一个权限判断结果未出现指示所属用户标识不具有对待查询数据表的查询权限时,则确定用户终端具有对待查询数据表的查询权限。如目标权限判断节点上的权限判断节点为3个,经由该3个权限判断节点进行权限判断后,得到的3个权限判断结果均未指示所属用户标识不具有对待查询数据表的查询权限时,该用户终端具有对待查询数据表的查询权限,若存在指示了所属用户标识不具有对待查询数据表的查询权限的权限判断结果时,则用户终端不具有对待查询数据表的查询权限。可选的,电子设备可以是利用目标权限判断节点上所有权限判断节点进行权限判断,得到所有权限判断结果之后,确定用户终端最终是否具有对待查询数据表的查询权限,也可以是得到一个权限判断结果确定一次用户终端是否具有对待查询数据表的查询权限,若此时基于一个权限判断结果确定户终端不具有对待查询数据表的查询权限时,则可以不再基于后续的权限判断节点继续进行权限判断,并确定用户终端最终不具有对待查询数据表的查询权限。
在一些实施例中,电子设备若根据权限判断树以及所属用户标识确定用户终端具有对待查询数据表的查询权限之后,可以针对数据获取指令生成数据获取任务,将数据获取任务添加到任务队列中,基于线程调度器对任务队列中的数据获取任务分配任务线程,后续,可以基于分配的任务线程,获取业务数据库对应的公共查询账号,从而实现多线程的数据获取。
S309、根据公共查询账号建立业务数据库与电子设备之间的连接关系,并基于连接关系从待查询数据表中获取满足数据获取条件的目标数据。
在一些实施例中,电子设备可以基于分配的任务线程,根据公共查询账号建立业务数据库与电子设备之间的连接关系,并基于连接关系从待查询数据表中获取满足数据获取条件的目标数据。
S310、将目标数据发送至用户终端。
在一些实施例中,电子设备可以在分配的任务线程中,获取到目标数据并发送至目标终端之后,将该分配的任务线程释放;也可以是,在分配的任务线程中,获取到目标数据,将该分配的任务线程释放。以及在电子设备得到目标数据之后,断开与业务数据库的连接关系。
例如,如图5所示,图5为本申请实施例提供的一种数据获取流程的示意图;其中,电子设备根据业务数据库中的业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定每个权限判断节点的权限判断规则,根据每个权限判断节点的权限判断规则生成针对业务数据库的权限判断树,接收用户终端发送的数据获取指令,并解析该数据获取指令得到数据表标识和数据获取条件,根据数据表标识确定待查询数据表,根据权限判断树以及用户终端的所属用户标识确定用户终端是否具有对待查询数据表的查询权限,若不存在查询权限,返回第一提示信息,若存在,针对数据获取指令生成数据获取任务,基于线程调度器对数据获取任务分配任务线程,在该任务线程中,获取并根据业务数据库对应的公共查询账号建立业务数据库与电子设备之间的连接关系,若连接成功,则对业务数据库执行该数据获取任务,得到目标数据,并返回至用户终端,以及断开该连接关系,若未因业务数据库存在异常导致连接失败,则返回第二提示信息。
本申请实施例中,电子设备可以获取多个业务数据表中每个业务数据表的业务属性,根据每个业务数据表的业务属性确定多个权限判断节点,并确定多个权限判断节点中每个权限判断节点的权限判断规则,基于每个权限判断节点的权限判断规则构建针对业务数据库的权限判断树,接收用户终端发送的数据获取指令,从多个业务数据表中确定数据表标识所指示的待查询数据表,根据待查询数据表的业务属性确定与待查询数据表关联的关联权限判断节点,根据权限判断树和关联权限判断节点确定针对待查询数据表的目标权限判断路径,若根据目标权限判断路径确定用户终端具有对待查询数据表的查询权限,获取业务数据库对应的公共查询账号,根据公共查询账号建立业务数据库与电子设备之间的连接关系,并基于连接关系从待查询数据表中获取满足数据获取条件的目标数据,将目标数据发送至用户终端。通过实施上述方法,可以结合业务数据表的业务属性确定权限判断树,便于对查询权限的管理,提高对查询权限的校验灵活性,此外通过公共查询账号可以避免业务数据库存储大量查询账号,防止业务数据库端直接由大量查询账号进行访问时业务数据库发生异常,提高数据获取效率。
请参见图6,图6为本申请提供的一种数据获取装置的结构示意图。需要说明的是,图6所示的数据获取装置,用于执行本申请图2和图3所示实施例的方法,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示,请参照本申请图2和图3所示的实施例。该数据获取装置600可包括:获取模块601、确定模块602、处理模块603、接收模块604。其中:
获取模块601,用于获取多个业务数据表中每个业务数据表的业务属性;所述多个业务数据表均存储于业务数据库中;
确定模块602,用于根据所述每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定所述多个权限判断节点中每个权限判断节点的权限判断规则;所述权限判断规则用于对所述用户标识的查询权限进行判断;
处理模块603,用于基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树;
接收模块604,用于接收用户终端发送的数据获取指令;所述数据获取指令包括数据表标识、数据获取条件,以及所述用户终端的所属用户标识;
所述确定模块602,还用于从所述多个业务数据表中确定所述数据表标识所指示的待查询数据表;
所述确定模块602,还用于若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限,获取所述业务数据库对应的公共查询账号;
所述处理模块603,还用于根据所述公共查询账号建立所述业务数据库与所述电子设备之间的连接关系,并基于所述连接关系从所述待查询数据表中获取满足所述数据获取条件的目标数据;
所述处理模块603,还用于将所述目标数据发送至所述用户终端。
在一个可能的实施方式中,所述处理模块603在用于基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树时,具体用于:
获取所述每个权限判断节点之间的判断逻辑关系;
根据所述每个权限判断节点之间的判断逻辑关系对所述多个权限判断节点进行划分,得到至少一个节点集合;所述节点集合包括至少一个权限判断节点;
基于所述每个权限判断节点的权限判断规则生成所述至少一个节点集合中每个节点集合对应的初始权限判断路径;
对所述每个节点集合对应的初始权限判断路径进行融合处理,得到所述权限判断树。
在一个可能的实施方式中,所述处理模块603在用于基于所述每个权限判断节点的权限判断规则生成至少一个节点集合中每个节点集合对应的初始权限判断路径时,具体用于:
基于目标节点集合包括的至少一个权限判断节点之间的判断逻辑关系,对所述目标节点集合包括的至少一个权限判断节点进行排序;所述目标节点集合为所述至少一个节点集合中的任一节点集合;
若所述至少一个权限判断节点中存在相同关系层级的至少两个目标权限判断节点,则获取所述至少两个目标权限判断节点的重要程度;所述相同关系层级的至少两个目标权限判断节点表示具有相同前置权限判断节点的目标权限判断节点;
根据所述至少两个目标权限判断节点的重要程度对所述至少两个目标权限判断节点进行排序;
根据排序结果和所述每个权限判断节点的权限判断规则生成所述目标节点集合对应的初始权限判断路径。
在一个可能的实施方式中,所述每个业务数据表均具有关联的权限判断节点;所述确定模块602在用于根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限时,具体用于:
获取所述待查询数据表关联的权限判断节点;
遍历所述权限判断树直至所述关联的权限判断节点所在位置,得到遍历结果;
根据所述遍历结果确定针对所述待查询数据表的目标权限判断路径;
按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果;
若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限。
在一个可能的实施方式中,所述目标权限判断路径中的权限判断节点的权限判断规则包括对所述所属用户标识的标识一致性验证;所述确定模块602在用于按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果时,具体用于:
获取所述待查询数据表的创建对象标识;
对比所述所属用户标识以及所述创建对象标识的一致性,得到对比结果;
将所述对比结果作为所述权限判断结果;
所述确定模块602在用于若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限时,具体用于:
若所述对比结果指示所述所属用户标识与所述创建对象标识一致,则确定所述用户终端具有对所述待查询数据表的查询权限。
在一个可能的实施方式中,所述目标权限判断路径中的权限判断节点的权限判断规则包括对所述所属用户标识的权限期限验证;所述确定模块602在用于按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果时,具体用于:
获取所述所属用户标识对应的权限期限,并根据所述权限期限确定所述所属用户标识的权限有效时间点;
对比所述数据获取指令的检测时间点以及所述权限有效时间点,得到对比结果;
将所述对比结果作为所述权限判断结果;
所述确定模块602在用于若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限时,具体用于:
若所述对比结果指示所述检测时间点小于或等于所述权限有效时间点,则确定所述用户终端具有对所述待查询数据表的查询权限。
在一个可能的实施方式中,所述确定模块602在用于若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限之后,还用于:
针对所述数据获取指令生成数据获取任务;
将所述数据获取任务添加到任务队列中;
基于线程调度器对所述任务队列中的数据获取任务分配任务线程;
所述确定模块602在用于获取所述业务数据库对应的公共查询账号时,具体用于:
基于所述分配的任务线程,获取所述业务数据库对应的公共查询账号。
本申请实施例中,获取模块获取多个业务数据表中每个业务数据表的业务属性;确定模块根据每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定多个权限判断节点中每个权限判断节点的权限判断规则;处理模块基于每个权限判断节点的权限判断规则构建针对业务数据库的权限判断树;接收模块接收用户终端发送的数据获取指令;确定模块从多个业务数据表中确定数据表标识所指示的待查询数据表;确定模块若根据权限判断树以及所属用户标识确定用户终端具有对待查询数据表的查询权限,获取业务数据库对应的公共查询账号;处理模块根据公共查询账号建立业务数据库与电子设备之间的连接关系,并基于连接关系从待查询数据表中获取满足数据获取条件的目标数据;处理模块将目标数据发送至用户终端。通过上述方案,可以结合业务数据表的业务属性确定权限判断树,便于对查询权限的管理,提高对查询权限的校验灵活性,此外通过公共查询账号可以避免业务数据库存储大量查询账号,防止业务数据库端直接由大量查询账号进行访问时业务数据库发生异常,提高数据获取效率。
在本申请各个实施例中的各功能模块可以集成在一个模块中,也可以是各个模块单独物理存在,也可以是两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现,本申请不做限定。
请参见图7,图7为本申请实施例提供的一种电子设备的结构示意图。如图7所示,该电子设备700包括:至少一个处理器701、存储器702。可选的,该电子设备还可包括网络接口。其中,所述处理器701、存储器702以及网络接口之间可以交互数据,网络接口受所述处理器701的控制用于收发消息,存储器702用于存储计算机程序,所述计算机程序包括程序指令,处理器701用于执行存储器702存储的程序指令。其中,处理器701被配置用于调用所述程序指令执行上述方法。
所述存储器702可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器702也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;所述存储器702还可以包括上述种类的存储器的组合。
所述处理器701可以是中央处理器(central processing unit,CPU)。在一个实施例中,所述处理器701还可以是图形处理器(Graphics Processing Unit,GPU)。所述处理器701也可以是由CPU和GPU的组合。
在一个可能的实施方式中,所述存储器702用于存储程序指令,所述处理器701可以调用所述程序指令,执行以下步骤:
获取多个业务数据表中每个业务数据表的业务属性;所述多个业务数据表均存储于业务数据库中;
根据所述每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定所述多个权限判断节点中每个权限判断节点的权限判断规则;所述权限判断规则用于对所述用户标识的查询权限进行判断;
基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树;
接收用户终端发送的数据获取指令;所述数据获取指令包括数据表标识、数据获取条件,以及所述用户终端的所属用户标识;
从所述多个业务数据表中确定所述数据表标识所指示的待查询数据表;
若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限,获取所述业务数据库对应的公共查询账号;
根据所述公共查询账号建立所述业务数据库与所述电子设备之间的连接关系,并基于所述连接关系从所述待查询数据表中获取满足所述数据获取条件的目标数据;
将所述目标数据发送至所述用户终端。
在一个可能的实施方式中,所述处理器701在用于基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树时,具体用于:
获取所述每个权限判断节点之间的判断逻辑关系;
根据所述每个权限判断节点之间的判断逻辑关系对所述多个权限判断节点进行划分,得到至少一个节点集合;所述节点集合包括至少一个权限判断节点;
基于所述每个权限判断节点的权限判断规则生成所述至少一个节点集合中每个节点集合对应的初始权限判断路径;
对所述每个节点集合对应的初始权限判断路径进行融合处理,得到所述权限判断树。
在一个可能的实施方式中,所述处理器701在用于基于所述每个权限判断节点的权限判断规则生成至少一个节点集合中每个节点集合对应的初始权限判断路径时,具体用于:
基于目标节点集合包括的至少一个权限判断节点之间的判断逻辑关系,对所述目标节点集合包括的至少一个权限判断节点进行排序;所述目标节点集合为所述至少一个节点集合中的任一节点集合;
若所述至少一个权限判断节点中存在相同关系层级的至少两个目标权限判断节点,则获取所述至少两个目标权限判断节点的重要程度;所述相同关系层级的至少两个目标权限判断节点表示具有相同前置权限判断节点的目标权限判断节点;
根据所述至少两个目标权限判断节点的重要程度对所述至少两个目标权限判断节点进行排序;
根据排序结果和所述每个权限判断节点的权限判断规则生成所述目标节点集合对应的初始权限判断路径。
在一个可能的实施方式中,所述每个业务数据表均具有关联的权限判断节点;所述处理器701在用于根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限时,具体用于:
获取所述待查询数据表关联的权限判断节点;
遍历所述权限判断树直至所述关联的权限判断节点所在位置,得到遍历结果;
根据所述遍历结果确定针对所述待查询数据表的目标权限判断路径;
按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果;
若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限。
在一个可能的实施方式中,所述目标权限判断路径中的权限判断节点的权限判断规则包括对所属用户标识的标识一致性验证;所述处理器701在用于按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果时,具体用于:
获取所述待查询数据表的创建对象标识;
对比所述所属用户标识以及所述创建对象标识的一致性,得到对比结果;
将所述对比结果作为所述权限判断结果;
所述处理器701在用于若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限时,具体用于:
若所述对比结果指示所述所属用户标识与所述创建对象标识一致,则确定所述用户终端具有对所述待查询数据表的查询权限。
在一个可能的实施方式中,所述目标权限判断路径中的权限判断节点的权限判断规则包括对所述所属用户标识的权限期限验证;所述处理器701在用于按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果时,具体用于:
获取所述所属用户标识对应的权限期限,并根据所述权限期限确定所述所属用户标识的权限有效时间点;
对比所述数据获取指令的检测时间点以及所述权限有效时间点,得到对比结果;
将所述对比结果作为所述权限判断结果;
所述处理器701在用于若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限时,具体用于:
若所述对比结果指示所述检测时间点小于或等于所述权限有效时间点,则确定所述用户终端具有对所述待查询数据表的查询权限。
在一个可能的实施方式中,所述处理器701在用于若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限之后,还用于:
针对所述数据获取指令生成数据获取任务;
将所述数据获取任务添加到任务队列中;
基于线程调度器对所述任务队列中的数据获取任务分配任务线程;
所述处理器701在用于获取所述业务数据库对应的公共查询账号时,具体用于:
基于所述分配的任务线程,获取所述业务数据库对应的公共查询账号。
具体实现中,本申请实施例中所描述的装置、处理器701、存储器702等可执行上述方法实施例所描述的实现方式,也可执行本申请实施例所描述的实现方式,在此不再赘述。
本申请实施例中还提供一种计算机(可读)存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,使所述处理器可执行上述方法实施例中所执行的部分或全部步骤。可选的,该计算机存储介质可以是易失性的,也可以是非易失性的。所述的计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
其中,本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
本申请实施例提供了一种计算机程序产品,该计算机程序产品可包括计算机程序,计算机程序被处理器执行时可实现上述方法中的部分或全部步骤,此处不赘述。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机存储介质中,该计算机存储介质可以为计算机可读存储介质,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本申请的部分实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于本申请所涵盖的范围。
Claims (10)
1.一种数据获取方法,其特征在于,应用于电子设备,所述方法包括:
获取多个业务数据表中每个业务数据表的业务属性;所述多个业务数据表均存储于业务数据库中;
根据所述每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定所述多个权限判断节点中每个权限判断节点的权限判断规则;所述权限判断规则用于对所述用户标识的查询权限进行判断;
基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树;
接收用户终端发送的数据获取指令;所述数据获取指令包括数据表标识、数据获取条件,以及所述用户终端的所属用户标识;
从所述多个业务数据表中确定所述数据表标识所指示的待查询数据表;
若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限,获取所述业务数据库对应的公共查询账号;
根据所述公共查询账号建立所述业务数据库与所述电子设备之间的连接关系,并基于所述连接关系从所述待查询数据表中获取满足所述数据获取条件的目标数据;
将所述目标数据发送至所述用户终端。
2.根据权利要求1所述的方法,其特征在于,所述基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树,包括:
获取所述每个权限判断节点之间的判断逻辑关系;
根据所述每个权限判断节点之间的判断逻辑关系对所述多个权限判断节点进行划分,得到至少一个节点集合;所述节点集合包括至少一个权限判断节点;
基于所述每个权限判断节点的权限判断规则生成所述至少一个节点集合中每个节点集合对应的初始权限判断路径;
对所述每个节点集合对应的初始权限判断路径进行融合处理,得到所述权限判断树。
3.根据权利要求2所述的方法,其特征在于,所述基于所述每个权限判断节点的权限判断规则生成至少一个节点集合中每个节点集合对应的初始权限判断路径,包括:
基于目标节点集合包括的至少一个权限判断节点之间的判断逻辑关系,对所述目标节点集合包括的至少一个权限判断节点进行排序;所述目标节点集合为所述至少一个节点集合中的任一节点集合;
若所述至少一个权限判断节点中存在相同关系层级的至少两个目标权限判断节点,则获取所述至少两个目标权限判断节点的重要程度;所述相同关系层级的至少两个目标权限判断节点表示具有相同前置权限判断节点的目标权限判断节点;
根据所述至少两个目标权限判断节点的重要程度对所述至少两个目标权限判断节点进行排序;
根据排序结果和所述每个权限判断节点的权限判断规则生成所述目标节点集合对应的初始权限判断路径。
4.根据权利要求1所述的方法,其特征在于,所述每个业务数据表均具有关联的权限判断节点;所述根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限,包括:
获取所述待查询数据表关联的权限判断节点;
遍历所述权限判断树直至所述关联的权限判断节点所在位置,得到遍历结果;
根据所述遍历结果确定针对所述待查询数据表的目标权限判断路径;
按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果;
若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限。
5.根据权利要求4所述的方法,其特征在于,所述目标权限判断路径中的权限判断节点的权限判断规则包括对所述所属用户标识的标识一致性验证;
所述按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果,包括:
获取所述待查询数据表的创建对象标识;
对比所述所属用户标识以及所述创建对象标识的一致性,得到对比结果;
将所述对比结果作为所述权限判断结果;
所述若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限,包括:
若所述对比结果指示所述所属用户标识与所述创建对象标识一致,则确定所述用户终端具有对所述待查询数据表的查询权限。
6.根据权利要求4所述的方法,其特征在于,所述目标权限判断路径中的权限判断节点的权限判断规则包括对所述所属用户标识的权限期限验证;
所述按照所述目标权限判断路径包括的权限判断节点的权限判断规则对所述所属用户标识进行权限判断,得到权限判断结果,包括:
获取所述所属用户标识对应的权限期限,并根据所述权限期限确定所述所属用户标识的权限有效时间点;
对比所述数据获取指令的检测时间点以及所述权限有效时间点,得到对比结果;
将所述对比结果作为所述权限判断结果;
所述若所述权限判断结果满足预设权限条件,确定所述用户终端具有对所述待查询数据表的查询权限,包括:
若所述对比结果指示所述检测时间点小于或等于所述权限有效时间点,则确定所述用户终端具有对所述待查询数据表的查询权限。
7.根据权利要求1所述的方法,其特征在于,所述若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限之后,所述方法还包括:
针对所述数据获取指令生成数据获取任务;
将所述数据获取任务添加到任务队列中;
基于线程调度器对所述任务队列中的数据获取任务分配任务线程;
所述获取所述业务数据库对应的公共查询账号,包括:
基于所述分配的任务线程,获取所述业务数据库对应的公共查询账号。
8.一种数据获取装置,其特征在于,所述装置包括:
获取模块,用于获取多个业务数据表中每个业务数据表的业务属性;所述多个业务数据表均存储于业务数据库中;
确定模块,用于根据所述每个业务数据表的业务属性与用户标识之间的关联关系确定多个权限判断节点,并确定所述多个权限判断节点中每个权限判断节点的权限判断规则;所述权限判断规则用于对所述用户标识的查询权限进行判断;
处理模块,用于基于所述每个权限判断节点的权限判断规则构建针对所述业务数据库的权限判断树;
接收模块,用于接收用户终端发送的数据获取指令;所述数据获取指令包括数据表标识、数据获取条件,以及所述用户终端的所属用户标识;
所述确定模块,还用于从所述多个业务数据表中确定所述数据表标识所指示的待查询数据表;
所述确定模块,还用于若根据所述权限判断树以及所述所属用户标识确定所述用户终端具有对所述待查询数据表的查询权限,获取所述业务数据库对应的公共查询账号;
所述处理模块,还用于根据所述公共查询账号建立所述业务数据库与所述电子设备之间的连接关系,并基于所述连接关系从所述待查询数据表中获取满足所述数据获取条件的目标数据;
所述处理模块,还用于将所述目标数据发送至所述用户终端。
9.一种电子设备,其特征在于,包括处理器和存储器,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111527148.7A CN114239060A (zh) | 2021-12-14 | 2021-12-14 | 数据获取方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111527148.7A CN114239060A (zh) | 2021-12-14 | 2021-12-14 | 数据获取方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114239060A true CN114239060A (zh) | 2022-03-25 |
Family
ID=80755810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111527148.7A Pending CN114239060A (zh) | 2021-12-14 | 2021-12-14 | 数据获取方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114239060A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114584404A (zh) * | 2022-05-07 | 2022-06-03 | 苏州智汇信息科技有限公司 | 一种基于云存储技术的数据安全防护系统及方法 |
CN115529171A (zh) * | 2022-09-16 | 2022-12-27 | 浙江网商银行股份有限公司 | 行为检测方法及装置 |
CN117150569A (zh) * | 2023-11-01 | 2023-12-01 | 深圳华付技术股份有限公司 | 一种银行业务库的安全交互方法和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108009408A (zh) * | 2017-12-04 | 2018-05-08 | 山东浪潮通软信息科技有限公司 | 一种权限管理方法、装置、可读介质及存储控制器 |
CN112541009A (zh) * | 2020-12-23 | 2021-03-23 | 平安普惠企业管理有限公司 | 数据查询方法、装置、电子设备及存储介质 |
CN113721926A (zh) * | 2021-09-09 | 2021-11-30 | 中国电信集团系统集成有限责任公司 | 组织树权限管理方法 |
-
2021
- 2021-12-14 CN CN202111527148.7A patent/CN114239060A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108009408A (zh) * | 2017-12-04 | 2018-05-08 | 山东浪潮通软信息科技有限公司 | 一种权限管理方法、装置、可读介质及存储控制器 |
CN112541009A (zh) * | 2020-12-23 | 2021-03-23 | 平安普惠企业管理有限公司 | 数据查询方法、装置、电子设备及存储介质 |
CN113721926A (zh) * | 2021-09-09 | 2021-11-30 | 中国电信集团系统集成有限责任公司 | 组织树权限管理方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114584404A (zh) * | 2022-05-07 | 2022-06-03 | 苏州智汇信息科技有限公司 | 一种基于云存储技术的数据安全防护系统及方法 |
CN115529171A (zh) * | 2022-09-16 | 2022-12-27 | 浙江网商银行股份有限公司 | 行为检测方法及装置 |
CN117150569A (zh) * | 2023-11-01 | 2023-12-01 | 深圳华付技术股份有限公司 | 一种银行业务库的安全交互方法和系统 |
CN117150569B (zh) * | 2023-11-01 | 2024-02-27 | 深圳华付技术股份有限公司 | 一种银行业务库的安全交互方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11604787B2 (en) | Method of generating globally verifiable unique identifiers using a scalable interlinked blockchain structure | |
CN108898390B (zh) | 基于区块链的智能合约调用方法及装置、电子设备 | |
US11087372B2 (en) | Benefit allocation method, apparatus, and electronic device | |
CN114239060A (zh) | 数据获取方法、装置、电子设备及存储介质 | |
US11716357B2 (en) | Data access policies | |
US20220004539A1 (en) | Privacy preserving architecture for permissioned blockchains | |
US20210049715A1 (en) | Blockchain-based data procesing method, apparatus, and electronic device | |
CN110008665B (zh) | 一种区块链的权限控制方法及装置 | |
CN112131002B (zh) | 数据管理方法及装置 | |
CN111427911A (zh) | 数据查询方法、装置、计算机设备和存储介质 | |
CN112258189A (zh) | 基于区块链的签约管理方法及装置和电子设备 | |
CN109858285B (zh) | 区块链数据的处理方法、装置、设备和介质 | |
CN112073374A (zh) | 信息拦截方法、装置及设备 | |
CN113542405A (zh) | 基于区块链的网络通信系统、方法、设备及存储介质 | |
WO2024055740A1 (zh) | 数据处理方法、计算机设备和可读存储介质 | |
CN112181599A (zh) | 模型训练方法、装置及存储介质 | |
KR20210097560A (ko) | 블록체인 트랜잭션 처리 방법 | |
KR102304954B1 (ko) | 피어 노드, 피어 노드에서 수행되는 처리 방법 및 블록체인 플랫폼 시스템 | |
CN115221559A (zh) | 数据账户的访问授权方法及装置 | |
CN115203746A (zh) | 数据账户的访问授权方法及装置 | |
US8656410B1 (en) | Conversion of lightweight object to a heavyweight object | |
CN113472781A (zh) | 一种服务获取方法、服务器及计算机可读存储介质 | |
US11683173B2 (en) | Consensus algorithm for distributed ledger technology | |
CN117272278B (zh) | 用于数字资产平台的去中心化管理方法及装置 | |
US20220405195A1 (en) | Secured code assignment and review engine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |