CN113190864A - 基于权限配置的数据访问方法、装置、系统、存储介质 - Google Patents

基于权限配置的数据访问方法、装置、系统、存储介质 Download PDF

Info

Publication number
CN113190864A
CN113190864A CN202110563182.3A CN202110563182A CN113190864A CN 113190864 A CN113190864 A CN 113190864A CN 202110563182 A CN202110563182 A CN 202110563182A CN 113190864 A CN113190864 A CN 113190864A
Authority
CN
China
Prior art keywords
data access
authority
user
data
statement
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
Application number
CN202110563182.3A
Other languages
English (en)
Inventor
栗增光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
ICBC Technology Co Ltd
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
ICBC Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC, ICBC Technology Co Ltd filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110563182.3A priority Critical patent/CN113190864A/zh
Publication of CN113190864A publication Critical patent/CN113190864A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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

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)
  • Automation & Control Theory (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供了一种基于权限配置的数据访问方法、装置、计算机系统及存储介质,涉及金融科技领域,包括:配置用户的数据访问权限;基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句;执行用户选择的所述数据访问语句,访问与所述数据访问语句关联的数据。该方法可实现用户权限的灵活配置,并基于权限配置自动生成多种数据访问语句,以供用户根据实际业务场景和数据规模选择,无需用户自定编写数据访问语句,且提升数据查询效率。

Description

基于权限配置的数据访问方法、装置、系统、存储介质
技术领域
本公开涉及金融科技领域,更具体地,涉及一种基于权限配置的数据访问方法、装置、系统、存储介质。
背景技术
目前,大多数业务系统或应用使用关系型数据库存储业务数据。因为业务系统需求,需要对用户能访问系统资源(业务数据)进行权限控制。数据权限主流解决方案为基于关系型数据库的角色访问控制模型(简称RBAC)进行权限设计,通过角色来汇集一组权限定义,再通过定义角色与人员的对应关系来实现人员的权限控制。
在业务系统中,以人员维度为视角,通常以人员所在部门为权限控制条件进行人员数据权限控制。组织部门结构通常是一棵单根多层级树形结构,每一层级的各节点的权限均不同数据权限常见规则如下:业务系统当前登录人员可以查询当前人员所在部门的业务数据;业务系统当前登录人员可以查询当前人员所在部门及该部门子部门的业务数据;业务系统当前登录人员可以查询任意指定部门业务数据;业务系统当前登录人员被限制查询任意指定部门业务数据。
然而,当前基于权限的数据方案方法存在以下两个问题:其一,权限的配置繁琐且不够灵活,其二,当部门结构复杂或者目标业务表数据量变大时,查询效率低。对于第一点,在业务系统权限控制实现过程中,配置的繁琐程度和灵活度是不可兼得的。在各个系统实现时,为了支持变化多端的需要,大多放弃了配置的简单性。部分复杂权限需要通过定制化SQL实现,对于业务人员不友好。对于第二点,数据权限控制本质上建立人与业务数据的枚举对应关系。但当部门结构变得复杂,或者授权关系变得复杂时,会直接导致相关的SQL复杂化,在各类数据库执行查询时效率低下。同时,随着业务系统累计的业务数据增多,查询效率低,响应时间慢更是直接影响用户使用系统体验。
发明内容
有鉴于此,本公开提供了一种基于权限配置的数据访问方法、装置、系统、存储介质。
本公开的一个方面提供了一种基于权限配置的数据访问方法,包括:配置用户的数据访问权限;基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句;执行用户选择的所述数据访问语句,访问与所述数据访问语句关联的数据。
根据本公开的实施例,所述配置用户的数据访问权限包括:给所述用户固定添加所述用户所属业务部门的第一数据访问权限;和/或根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限。
根据本公开的实施例,所述根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限包括:给所述用户添加所属业务部门的子部门的数据访问权限。
根据本公开的实施例,所述根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限还包括:给所述用户添加指定业务部门的数据访问权限。
根据本公开的实施例,所述根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限还包括:限制所述用户访问指定业务部门的数据访问权限。
根据本公开的实施例,所述基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句包括:根据所述数据访问权限,生成枚举型数据访问语句,用于定向枚举权限所允许的数据范围内的数据。
根据本公开的实施例,所述基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句还包括:根据所述数据访问权限,生成选择查询数据访问语句,用于查询权限所允许的指定业务部门的数据。
根据本公开的实施例,所述基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句还包括:生成用于存储所述数据访问权限信息的授权临时表;基于所述授权临时表,生成预设格式的数据访问语句,用于查询所述数据访问权限允许的全部数据范围内的指定业务部门的指定业务表的数据。
根据本公开的实施例,还包括:提供权限配置页面给管理员配置用户的数据访问权限。
根据本公开的实施例,还包括:接收用户自定义数据访问语句;执行所述用户自定义数据访问语句,访问与所述用户自定义数据访问语句关联的数据。
根据本公开的实施例,还包括:检查所述用户自定义数据访问语句的数据访问范围是否限制于所述数据访问权限内;当所述数据访问范围限制于所述数据访问权限内时,执行所述执行所述用户自定义数据访问语句。
本公开另一方面提供了一种基于权限配置的数据访问装置,包括:权限配置模块,用于配置用户的数据访问权限;数据访问语句生成模块,用于基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句;语句执行模块,用于执行用户选择的所述数据访问语句,访问与所述数据访问语句关联的数据。
根据本公开的实施例,所述权限配置模块包括:第一权限配置单元,用于给所述用户固定添加所述用户所属业务部门的第一数据访问权限;和/或第二权限配置单元,用于根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限。
根据本公开的实施例,所述第二权限配置单元包括:子部门权限配置单元,用于给所述用户添加所属业务部门的子部门的数据访问权限;定向权限配置单元,用于给所述用户添加指定业务部门的数据访问权限;权限限制单元,用于限制所述用户访问指定业务部门的数据访问权限。
根据本公开的实施例,所述数据访问语句生成模块包括:枚举语句生成单元,用于根据所述数据访问权限,生成枚举型数据访问语句,用于定向枚举权限所允许的数据范围内的数据;选择查询语句生成单元,用于根据所述数据访问权限,生成选择查询数据访问语句,用于查询权限所允许的指定业务部门的数据;授权语句生成单元,用于生成用于存储所述数据访问权限信息的授权临时表,基于所述授权临时表,生成预设格式的数据访问语句,用于查询所述数据访问权限允许的全部数据范围内的指定业务部门的指定业务表的数据。
本公开另一方面提供了一种计算机系统,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现第一方面中任一项所述的方法。
本公开另一方面提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现第一方面中任一项所述的方法。
根据本公开的实施例,可实现用户权限的灵活配置,并基于权限配置自动生成多种数据访问语句,以供用户根据实际业务场景和数据规模选择,无需用户自定编写数据访问语句,且提升数据查询效率。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了可以应用本公开的用于基于权限配置的数据访问方法和装置的示例性系统架构;
图2示意性示出了根据本公开实施例的基于权限配置的数据访问方法和装置的应用场景;
图3示意性示出了根据本公开实施例的基于权限配置的数据访问方法的流程图;
图4示意性示出了根据本公开实施例的配置用户数据访问权限的流程图;
图5示意性示出了根据本公开实施例的用户的数据访问权限的配置组成示意图;
图6A示意性示出了根据本公开一实施例授予用户所属业务部门的数据访问权限的页面示意图;
图6B示意性示出了根据本公开另一实施例授予用户跨业务部门的数据访问权限的页面示意图;
图6C示意性示出了根据本公开另一实施例的限制用户数据访问权限的页面示意图;
图7示意性示出了根据本公开另一实施例的基于权限配置的数据访问方法的流程图;
图8示意性示出了根据本公开实施例的基于权限配置的数据访问装置的框图;
图9示意性示出了根据本公开实施例的权限配置模块的框图;
图10示意性示出了根据本公开实施例的第二权限配置单元的框图;
图11示意性示出了根据本公开实施例的数据访问语句生成模块的框图;以及
图12示意性示出了根据本公开实施例的适于实现基于权限配置的数据访问装置的计算机系统1200的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。在使用类似于“A、B或C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B或C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。
本公开的实施例提供了一种用于基于权限配置的数据访问方法及装置。该方法包括配置数据访问权限和生成数据访问语句。其中,给用户配置数据访问权限包括给用户固定配置用户所属部门的权限,以及,给用户配置其所属部门的子部门的权限或其他指定部门的权限,此外,还可单独禁止用户访问指定部门的数据的权限。根据用户的数据访问权限,可自动生成多种类型的多个数据访问语句,以供用户选择,使数据库根据用户选择的数据访问语句查询相应的数据。
图1示意性示出了根据本公开实施例的可以应用基于权限配置的数据访问方法及装置的示例性系统架构100。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,根据该实施例的系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线和/或无线通信链路等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端和/或社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的基于权限配置的数据访问方法一般可以由服务器105执行。相应地,本公开实施例所提供的基于权限配置的数据访问装置一般可以设置于服务器105中。本公开实施例所提供的基于权限配置的数据访问方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的基于权限配置的数据访问装置也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。或者,本公开实施例所提供的基于权限配置的数据访问方法也可以由终端设备101、102、或103执行,或者也可以由不同于终端设备101、102、或103的其他终端设备执行。相应地,本公开实施例所提供的基于权限配置的数据访问装置也可以设置于终端设备101、102、或103中,或设置于不同于终端设备101、102、或103的其他终端设备中。
例如,用户的权限配置数据可以原本存储在终端设备101、102、或103中的任意一个(例如,终端设备101,但不限于此)之中,或者存储在外部存储设备上并可以导入到终端设备101中。然后,终端设备101可以在本地执行本公开实施例所提供的基于权限配置的数据访问方法,或者将用户的权限配置数据发送到其他终端设备、服务器、或服务器集群,并由接收该用户的权限配置数据的其他终端设备、服务器、或服务器集群来执行本公开实施例所提供的基于权限配置的数据访问方法。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2示意性示出了根据本公开实施例的基于权限配置的数据访问方法和装置的应用场景。
如图2所示,组织部门结构通常可分为多层级树形结构。因为业务系统需求,需要对用户能访问系统资源(业务数据)进行权限控制。目前,数据权限主流解决方案为基于关系型数据库的角色访问控制模型(RBAC)进行权限设计和开发实现。通过角色来汇集一组权限定义,后通过定义角色与人员的对应关系来实现人员的权限控制。在业务系统中,以人员维度为视角,通常以人员所在部门为权限控制条件进行人员数据权限控制。
在业务系统中,以人员维度为视角,通常以人员所在部门为权限控制条件进行人员数据权限控制。数据权限常见规则如下:业务系统当前登录人员可以查询当前人员所在部门的业务数据;业务系统当前登录人员可以查询当前人员所在部门及该部门子部门的业务数据;业务系统当前登录人员可以查询任意指定部门业务数据。业务系统当前登录人员被限制查询任意指定部门业务数据。
在主流业务系统中,通常通过完全配置化或者硬编码的方式实现具体人员的授权,以实现最终权限控制。
图3示意性示出了根据本公开实施例的基于权限配置的数据访问方法的流程图。
如图3所示,本公开实施例提供的一种基于权限配置的数据访问方法的流程包括S301~S303。
S301,配置用户的数据访问权限。
S302,基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句。
S303,执行用户选择的所述数据访问语句,访问与所述数据访问语句关联的数据。
根据本公开的实施例,基于配置的数据访问权限生成可供用户选择的数据访问语句,根据自动生成的数据访问语句查询数据库,避免了用户需自行编写数据访问语句,提升了用户查询数据的效率;数据访问语句的种类有多种,用户可根据自身需要扩大或缩小搜索范围,选择合适的数据搜索的组织结构,从而提升搜索效率。
下面将对S301~S303的具体实施方式进行进一步说明。
图4示意性示出了根据本公开实施例的配置用户数据访问权限的流程图。
如图4所示,根据步骤S301配置用户的数据访问权限,包括S401~S402。
S401,给所述用户固定添加所述用户所属业务部门的第一数据访问权限。
S402,根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限。
根据本公开的实施例,用户的数据访问权限的配置实际包括两种配置规则:固定化规则和配置化规则。固定化规则为默认的配置规则,默认当前系统登录人员可以查看其所在部门业务数据的权限,即第一数据访问权限。因为在业务系统中人员一定归属于某一个部门,那么默认规则他可以访问该部门业务数据。当然,也可以禁止访问。例如:当前人员张一所在部门为市场部,那么他可以访问使用到所有市场部相关的单据。配置化规则为给用户定制化配置权限的规则,当前人员增加其可以查看所在部门以下子部门业务数据的权限,即第二数据访问权限。例如:当前人员所在部门为市场总部,市场总部有2个子部门华东市场部和华北市场部。如果进行了授权,那么他能够访问使用华东市场部和华北市场部的业务数据。
图5示意性示出了根据本公开实施例的用户数据访问权限的配置组成示意图。
如图5所示,用户数据访问权限的配置组成包括根据固定化规则的固定配置和根据配置化规则的配置权限,固定配置一般为用户所在部门业务数据的权限,配置权限可以至少包括如图5三种配置方式。
配置1,给所述用户添加所属业务部门的子部门的数据访问权限。
当前人员增加其可以查看所在部门以下子部门业务数据的权限。例如:当前人员所在部门为市场总部,市场总部有2个子部门华东市场部和华北市场部。如果进行了授权,那么他能够访问使用华东市场部和华北市场部的业务数据。
配置2,给所述用户添加指定业务部门的数据访问权限。
在当前人员增加可以查看其他部门业务数据的数据权限。如:跨部门数据访问授权。例如当前人员张一为市场总部员工,可以跨部门授权华东业务部数据。
配置3,限制所述用户访问指定业务部门的数据访问权限。
删减当前人员可查看数据范围,禁止访问部分子部门数据。例如当前人员张一为市场总部员工,默认授权可以访问市场部,华东市场部和华北市场部业务数据。但可以单独设置禁止访问华北市场部数据。
根据本公开的实施例,基于上述配置方式,用户的数据访问权限的配置组成为:
当前人员数据权限范围=固定化规则(默认规则)+配置化规则1(新增规则)+配置化规则2(新增规则)-配置华规则3(排除规则)。
例如:市场部员工张一,根据固定化规则,给他配置可以查询本部门数据的权限,在此基础上,其一,还给他允许访问子部门数据的权限,其二,给他配置允许访问华东业务部数据的权限,其三,禁止他访问华北市场部数据的权限。那么,最终张一可以查看市场部、华东市场部和华东业务部的数据。
根据本公开的实施例,可以提供权限配置页面给管理员配置用户的数据访问权限,简化业务系统授权过程,优化了用户交互,使得用户授权变得简单,且业务人员理解,符合直觉。
图6A示意性示出了根据本公开一实施例授予用户所属业务部门的数据访问权限的页面示意图。
如图6A所示,在该页面示意图中,选择人员张一,为其进行数据访问权限的配置,包括配置其所属本部门的业务数据的访问权限和下级子部门的业务数据的访问权限,通过在页面上勾选选项实现。根据图6A所示的配置,当前人员张一为部门为市场总部人员,他可以访问使用到所有市场部相关的单据。
图6B示意性示出了根据本公开另一实施例授予用户跨业务部门的数据访问权限的页面示意图。
如图6B所示,在该页面示意图中,给人员张一配置跨部门的数据访问权限,通过从部门列表中进行勾选完成配置。根据图6B所示的配置,当前人员张一为市场总部员工,可以跨部门授权华东业务部数据。
图6C示意性示出了根据本公开另一实施例的限制用户数据访问权限的页面示意图。
如图6C所示,在该页面示意图中,禁止了人员张一访问华北市场部的权限,结合图6A~6B的配置,当前人员张一为市场总部员工,默认授权可以访问市场部,包括华东市场部的业务数据,但禁止访问华北市场部的数据。
图7示意性示出了根据本公开另一实施例的基于权限配置的数据访问方法的流程图。
如图7所示,基于如图1~6图所示的基于权限配置的数据访问方法,根据S701完成权限配置后,可自动生成至少3种类型的数据访问语句,用于实现对数据库不同类型、不同程度的访问。具体的,数据访问语句的类型如下。
S702,根据所述数据访问权限,生成枚举型数据访问语句,用于定向枚举权限所允许的数据范围内的数据。
用户配置授权数据后,生成权限数据的枚举项SQL,用于子查询控制。如:部门IDin(101,102,103)或者部门ID not in(101,102,103)。该类型的数据访问语句适用于权限相对固定、变化不大、且组织结构不复杂的数据查询场景。
S703,根据所述数据访问权限,生成选择查询数据访问语句,用于查询权限所允许的指定业务部门的数据。
用户配置授权数据后,生成权限数据查询查询数据访问语句,用于权限控制。如:部门ID in(select部门ID from部门表where部门名称=“当前登陆人员所属部门”)。权限常调整,且组织结构不复杂。权限相对固定,变化不大,且组织结构不复杂。该类型的数据访问语句适用于权限常调整,且组织结构不复杂的数据查询场景。
S704,基于所述授权临时表,生成预设格式的数据访问语句,用于查询所述数据访问权限允许的全部数据范围内的指定业务部门的指定业务表的数据。
用户配置授权数据,并配置用于生成授权临时表的存储过程或者函数。即,在执行查询前,先调用存储过程,将授权数据生成在临时表中,后使用临时表关联查询控制权限。如:在执行SQL查询前调用存储过程proc_auth(),生成临时表table_temp_auth数据。执行业务查询时,使用查询语句如下:select*from业务表where部门名称in(select部门名称from table_temp_auth)。该类型语句适用于权限逻辑及组织结构复杂、且业务数据量大的数据查询场景。
上述方法提供了多种数据优化方案,用户可以根据实际业务场景和数据规模进行选择,以最合适的数据检索范围和检索效率的方式进行检索。
根据上述方式自动生成的数据访问语句,本质上是基于数据访问权限,生成预设格式的数据访问语句,一定程度上是对在该数据访问权限下可使用的数据访问语句的枚举。但为了避免自动生成的语句不满足用户需求,且为了提升数据访问语句使用的灵活性,还可以基于用户自定义的数据访问语句进行数据查询,包括以下步骤:
接收用户自定义数据访问语句;
执行所述用户自定义数据访问语句,访问与所述用户自定义数据访问语句关联的数据。
由于自定义数据访问语句是用户自定义的,其数据检索范围不一定符合该用户的数据访问权限,为了保证用户的自定义数据访问语句有效,完成用户的自定义数据检索,在执行用户自定义数据防问语句前,还应该包括:
检查所述用户自定义数据访问语句的数据访问范围是否限制于所述数据访问权限内;
当所述数据访问范围限制于所述数据访问权限内时,执行所述执行所述用户自定义数据访问语句。
根据本公开实施例提供的权限配置的数据访问方法,可实现用户权限的灵活配置,并基于权限配置自动生成多种数据访问语句,以供用户根据实际业务场景和数据规模选择,无需用户自定编写数据访问语句,且提升数据查询效率。
图8示意性示出了根据本公开的实施例的权限配置的数据访问装置的框图。
如图8所示,权限配置的数据访问装置800包括:权限配置模块810、数据访问语句生成模块820、语句执行模块830。
权限配置模块810,用于配置用户的数据访问权限。
数据访问语句生成模块820,用于基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句。
语句执行模块830,用于执行用户选择的所述数据访问语句,访问与所述数据访问语句关联的数据。
图9示意性示出了根据本公开实施例的权限配置模块810的框图。
如图9所示,权限配置模块810包括:第一权限配置单元910,第二权限配置单元920。
第一权限配置单元910,用于给所述用户固定添加所述用户所属业务部门的第一数据访问权限。
第二权限配置单元920,用于根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限。
图10示意性示出了根据本公开实施例的第二权限配置单元920的框图。
如图10所示,第二权限配置单元920包括:子部门权限配置单元1010,定向权限配置单元1020,权限限制单元1030。
子部门权限配置单元1010,用于给所述用户添加所属业务部门的子部门的数据访问权限。
定向权限配置单元1020,用于给所述用户添加指定业务部门的数据访问权限。
权限限制单元1030,用于限制所述用户访问指定业务部门的数据访问权限。
图11示意性示出了根据本公开实施例的数据访问语句生成模块820的框图。
如图11所示,数据访问语句生成模块820包括:枚举语句生成单元1110,选择查询语句生成单元1120,授权语句生成单元1130。
枚举语句生成单元1110,用于根据所述数据访问权限,生成枚举型数据访问语句,用于定向枚举权限所允许的数据范围内的数据;
选择查询语句生成单元1120,用于根据所述数据访问权限,生成选择查询数据访问语句,用于查询权限所允许的指定业务部门的数据;
授权语句生成单元1130,用于生成用于存储所述数据访问权限信息的授权临时表,基于所述授权临时表,生成预设格式的数据访问语句,用于查询所述数据访问权限允许的全部数据范围内的指定业务部门的指定业务表的数据。
根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,权限配置模块810、数据访问语句生成模块820、语句执行模块830中的任意多个可以合并在一个模块/单元/子单元中实现,或者其中的任意一个模块/单元/子单元可以被拆分成多个模块/单元/子单元。或者,这些模块/单元/子单元中的一个或多个模块/单元/子单元的至少部分功能可以与其他模块/单元/子单元的至少部分功能相结合,并在一个模块/单元/子单元中实现。根据本公开的实施例,权限配置模块810、数据访问语句生成模块820、语句执行模块830中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,权限配置模块810、数据访问语句生成模块820、语句执行模块830中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
需要说明的是,本公开的实施例中基于权限配置的数据访问装置部分与本公开的实施例中基于权限配置的数据访问方法部分是相对应的,基于权限配置的数据访问装置部分的描述具体参考基于权限配置的数据访问方法部分,在此不再赘述。
图12示意性示出了根据本公开实施例的适于实现上文描述的方法的计算机系统的框图。图12示出的计算机系统仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图12所示,根据本公开实施例的计算机系统1200包括处理器1201,其可以根据存储在只读存储器(ROM)1202中的程序或者从存储部分1208加载到随机访问存储器(RAM)1203中的程序而执行各种适当的动作和处理。处理器1201例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器1201还可以包括用于缓存用途的板载存储器。处理器1201可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 1203中,存储有系统1200操作所需的各种程序和数据。处理器1201、ROM1202以及RAM 1203通过总线1204彼此相连。处理器1201通过执行ROM 1202和/或RAM 1203中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 1202和RAM 1203以外的一个或多个存储器中。处理器1201也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,系统1200还可以包括输入/输出(I/O)接口1205,输入/输出(I/O)接口1205也连接至总线1204。系统1200还可以包括连接至I/O接口1205的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1207;包括硬盘等的存储部分1208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信处理。驱动器1210也根据需要连接至I/O接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。
根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。在该计算机程序被处理器1201执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 1202和/或RAM 1203和/或ROM 1202和RAM 1203以和的一个或多个存储器。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

Claims (17)

1.一种基于权限配置的数据访问方法,包括:
配置用户的数据访问权限;
基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句;
执行用户选择的所述数据访问语句,访问与所述数据访问语句关联的数据。
2.根据权利要求1所述的方法,其中,所述配置用户的数据访问权限包括:
给所述用户固定添加所述用户所属业务部门的第一数据访问权限;和/或
根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限。
3.根据权利要求2所述的方法,所述根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限包括:
给所述用户添加所属业务部门的子部门的数据访问权限。
4.根据权利要求2所述的方法,所述根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限还包括:
给所述用户添加指定业务部门的数据访问权限。
5.根据权利要求2所述的方法,所述根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限还包括:
限制所述用户访问指定业务部门的数据访问权限。
6.根据权利要求1所述的方法,所述基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句包括:
根据所述数据访问权限,生成枚举型数据访问语句,用于定向枚举权限所允许的数据范围内的数据。
7.根据权利要求1所述的方法,所述基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句还包括:
根据所述数据访问权限,生成选择查询数据访问语句,用于查询权限所允许的指定业务部门的数据。
8.根据权利要求1所述的方法,所述基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句还包括:
生成用于存储所述数据访问权限信息的授权临时表;
基于所述授权临时表,生成预设格式的数据访问语句,用于查询所述数据访问权限允许的全部数据范围内的指定业务部门的指定业务表的数据。
9.根据权利要求1所述的方法,还包括:
提供权限配置页面给管理员配置用户的数据访问权限。
10.根据权利要求1所述的方法,还包括:
接收用户自定义数据访问语句;
执行所述用户自定义数据访问语句,访问与所述用户自定义数据访问语句关联的数据。
11.根据权利要求10所述的方法,还包括:
检查所述用户自定义数据访问语句的数据访问范围是否限制于所述数据访问权限内;
当所述数据访问范围限制于所述数据访问权限内时,执行所述执行所述用户自定义数据访问语句。
12.一种基于权限配置的数据访问装置,包括:
权限配置模块,用于配置用户的数据访问权限;
数据访问语句生成模块,用于基于所述数据访问权限,生成符合所述数据访问权限的多种数据访问语句;
语句执行模块,用于执行用户选择的所述数据访问语句,访问与所述数据访问语句关联的数据。
13.根据权利要求12所述的装置,其中,所述权限配置模块包括:
第一权限配置单元,用于给所述用户固定添加所述用户所属业务部门的第一数据访问权限;和/或
第二权限配置单元,用于根据预设的配置规则,给所述用户配置其他业务部门的第二数据访问权限。
14.根据权利要求13所述的装置,所述第二权限配置单元包括:
子部门权限配置单元,用于给所述用户添加所属业务部门的子部门的数据访问权限;
定向权限配置单元,用于给所述用户添加指定业务部门的数据访问权限;
权限限制单元,用于限制所述用户访问指定业务部门的数据访问权限。
15.根据权利要求12所述的装置,所述数据访问语句生成模块包括:
枚举语句生成单元,用于根据所述数据访问权限,生成枚举型数据访问语句,用于定向枚举权限所允许的数据范围内的数据;
选择查询语句生成单元,用于根据所述数据访问权限,生成选择查询数据访问语句,用于查询权限所允许的指定业务部门的数据;
授权语句生成单元,用于生成用于存储所述数据访问权限信息的授权临时表,基于所述授权临时表,生成预设格式的数据访问语句,用于查询所述数据访问权限允许的全部数据范围内的指定业务部门的指定业务表的数据。
16.一种计算机系统,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至11中任一项所述的方法。
17.一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器实现权利要求1至11中任一项所述的方法。
CN202110563182.3A 2021-05-21 2021-05-21 基于权限配置的数据访问方法、装置、系统、存储介质 Pending CN113190864A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110563182.3A CN113190864A (zh) 2021-05-21 2021-05-21 基于权限配置的数据访问方法、装置、系统、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110563182.3A CN113190864A (zh) 2021-05-21 2021-05-21 基于权限配置的数据访问方法、装置、系统、存储介质

Publications (1)

Publication Number Publication Date
CN113190864A true CN113190864A (zh) 2021-07-30

Family

ID=76984819

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110563182.3A Pending CN113190864A (zh) 2021-05-21 2021-05-21 基于权限配置的数据访问方法、装置、系统、存储介质

Country Status (1)

Country Link
CN (1) CN113190864A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114925343A (zh) * 2022-05-25 2022-08-19 奇点浩翰数据技术(北京)有限公司 一种处理权限数据的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679792A (zh) * 2013-12-03 2015-06-03 航天信息软件技术有限公司 一种数据权限的实现方法
CN110895537A (zh) * 2019-11-29 2020-03-20 中国银行股份有限公司 自由查询权限控制的方法及装置
CN111709046A (zh) * 2020-06-23 2020-09-25 中国平安财产保险股份有限公司 用户权限数据配置方法、装置、设备及存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679792A (zh) * 2013-12-03 2015-06-03 航天信息软件技术有限公司 一种数据权限的实现方法
CN110895537A (zh) * 2019-11-29 2020-03-20 中国银行股份有限公司 自由查询权限控制的方法及装置
CN111709046A (zh) * 2020-06-23 2020-09-25 中国平安财产保险股份有限公司 用户权限数据配置方法、装置、设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114925343A (zh) * 2022-05-25 2022-08-19 奇点浩翰数据技术(北京)有限公司 一种处理权限数据的方法和装置
CN114925343B (zh) * 2022-05-25 2023-06-20 奇点浩翰数据技术(北京)有限公司 一种处理权限数据的方法和装置

Similar Documents

Publication Publication Date Title
US11038867B2 (en) Flexible framework for secure search
US9667661B2 (en) Privileged account manager, dynamic policy engine
JP6417035B2 (ja) 企業システム内の装置上のアプリケーションの統一準備
US11599663B2 (en) Computer-implemented methods, systems comprising computer-readable media, and electronic devices for completing queries propagated across a plurality of datasources
US9251364B2 (en) Search hit URL modification for secure application integration
US8725770B2 (en) Secure search performance improvement
US20120102453A1 (en) Multi-dimensional objects
US11811773B2 (en) Providing access to content within a computing environment
US20090138794A1 (en) System and method for securing web applications
CN115344688B (zh) 业务数据展示方法、装置、电子设备和计算机可读介质
US20200233907A1 (en) Location-based file recommendations for managed devices
US10491635B2 (en) Access policies based on HDFS extended attributes
CN113190864A (zh) 基于权限配置的数据访问方法、装置、系统、存储介质
CN116720206A (zh) 一种权限管理方法、装置、电子设备及存储介质
US7801972B1 (en) Mobile device access to back office data store
CN113760835A (zh) 日志管理方法、中台系统、电子设备和存储介质
CN111914065A (zh) 短信内容验证方法、装置、计算机系统和计算机可读介质

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