一种访问控制方法、系统、设备、介质和产品与流程

文档序号:33040059发布日期:2023-01-24 21:11阅读:34来源:国知局
一种访问控制方法、系统、设备、介质和产品与流程

1.本技术涉及计算机技术领域,尤其涉及一种访问控制方法、系统、设备、介质和产品。


背景技术:

2.随着信息化技术的发展,利用计算机等信息技术构建数据库实现数据共享越来越广泛,而数据库的数据共享会为数据库带来安全性问题。
3.如何对数据库进行安全性保护,防止数据库中的数据泄露、被篡改或被破坏是目前亟需解决的技术问题。


技术实现要素:

4.本技术提供一种访问控制方法、系统、设备、介质和产品,防止数据库中的数据泄露、被篡改、被破坏。
5.第一方面,本技术提供一种访问控制方法,所述方法用于应用服务器,包括:
6.接收访问主体发送的查询数据请求,通过数据访问控制sdk从所述查询数据请求中提取所述访问主体的属性、访问客体的属性以及环境属性,并将所述访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器;
7.接收所述访问控制服务器发送的目标查询条件,并将所述目标查询条件发送至数据库服务器,所述目标查询条件是根据所述查询数据请求和查询限制条件生成的,所述查询限制条件是通过构建的访问控制上下文模型选择的与所述访问主体的属性、访问客体的属性以及环境属性匹配的限制条件;
8.接收所述数据库服务器发送的目标数据,将所述目标数据推送至所述访问主体,所述目标数据是所述数据库服务器根据所述目标查询条件查询到的。
9.可选的,所述接收访问主体发送的查询数据请求,通过数据访问控制sdk从所述查询数据请求中提取所述访问主体的属性、访问客体的属性以及环境属性,具体包括:
10.接收访问主体发送的原始sql语句,通过数据访问控制sdk从所述原始sql语句中提取所述访问主体的属性、访问客体的属性以及环境属性。
11.可选的,接收访问主体发送的查询数据请求之前,所述方法还包括:
12.在应用程序中集成数据访问控制sdk。
13.第二方面,本技术提供一种访问控制方法,所述方法用于访问控制服务器,包括:
14.接收应用服务器发送的访问主体的属性、访问客体的属性以及环境属性,所述访问主体的属性、访问客体的属性以及环境属性是所述应用服务器通过数据访问控制sdk从访问主体发送的查询数据请求中提取的;
15.通过构建的访问控制上下文模型选择与所述访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件;
16.根据所述查询数据请求和所述查询限制条件生成目标查询条件,并将所述目标查
询条件发送至所述应用服务器,所述应用服务器用于将所述目标查询条件发送至数据库服务器并接收所述数据库服务器发送的根据所述目标查询条件查询到的目标数据以及将所述目标数据推送至所述访问主体。
17.可选的,所述根据所述查询数据请求和所述查询限制条件生成目标查询条件,具体包括:
18.解析原始sql语句,将所述查询限制条件添加至解析后的原始sql语句中生成目标sql语句。
19.可选的,通过构建的访问控制上下文模型选择与所述访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件之前,所述方法还包括:
20.根据多个访问主体的属性、每个访问主体对应的访问客体的属性和环境属性,以及多个业务数据的访问控制条件构建访问控制上下文模型。
21.第三方面,本技术提供一种访问控制系统,所述系统包括:应用服务器、访问控制服务器和数据库服务器;
22.所述应用服务器用于接收访问主体发送的查询数据请求,通过数据访问控制数据访问控制sdk从所述查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,并将所述访问主体的属性、访问客体的属性以及环境属性发送至所述访问控制服务器;
23.所述访问控制服务器用于通过构建的访问上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件,并根据所述查询数据请求和所述查询限制条件生成目标查询条件,并将所述目标查询条件发送至所述应用服务器;
24.所述应用服务器还用于将所述目标查询条件发送至所述数据库服务器;
25.所述数据库服务器用于根据所述目标查询条件查询目标数据,将查询到目标数据发送至所述应用服务器;
26.所述应用服务器还用于将所述目标数据推送至所述访问主体。
27.可选的,所述访问控制服务器包括:策略选择器和构造器;
28.所述策略选择器用于通过构建的访问控制上下文选择与所述访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件;
29.所述构造器用于根据所述查询数据请求和所述查询限制条件生成目标查询条件。
30.可选的,所述应用服务器包括:策略执行器;
31.所述策略执行器用于根据所述目标查询条件查询目标数据,将查询到的目标数据推送至所述访问主体。
32.可选的,所述构造器包括sql构造器;
33.所述sql构造器用于解析原始sql语句,将所述查询限制条件添加至解析后的原始sql语句中生成目标sql语句。
34.可选的,所述访问控制服务器还包括:策略编辑器和数据访问控制模块;
35.所述策略编辑器用于构建访问控制条件;
36.所述数据访问控制模块用于根据多个访问主体的属性、每个访问主体对应的访问客体属性和环境属性,以及多个业务数据的访问控制条件构建访问控制上下文模型。
37.第四方面,本技术提供一种电子设备,包括:存储器和处理器;
38.存储器用于存储指令;处理器用于调用存储器中的指令执行第一方面及第一方面
任一种可能的设计中的访问控制方法或第二方面及第二方面任一种可能的设计中的访问控制方法。
39.第四方面,本技术提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,当电子设备的至少一个处理器执行该计算机指令时,电子设备执行第一方面及第一方面任一种可能的设计中的访问控制方法或第二方面及第二方面任一种可能的设计中的访问控制方法。
40.第五方面,本技术提供一种计算机程序产品,所述计算机程序产品包括计算机指令,当电子设备的至少一个处理器执行该计算机指令时,电子设备执行第一方面及第一方面任一种可能的设计中的访问控制方法或第二方面及第二方面任一种可能的设计中的访问控制方法。
41.本技术提供的访问控制方法,应用服务器接收访问主体发送的查询数据请求,通过数据访问控制sdk从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,并将访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器。访问控制服务器通过构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件,并根据查询数据请求和查询限制条件生成目标查询条件,并将目标查询条件发送至应用服务器。应用服务器将目标查询条件发送至数据库服务器,使得数据库服务器根据目标查询条件查询目标数据,将查询到的目标数据发送至应用服务器,应用服务器将目标数据推送至访问主体。这样,应用程序中集成有sdk,在接收到访问主体发送的查询数据请求后,可以从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,而后可以根据访问主体的属性、访问客体的属性、环境属性以及查询数据请求查询目标数据,能够在访问主体的属性信息满足访问客体的权限信息时使得访问主体能够访问目标数据,不同的访问主体、不同的访问客体具有对应的查询限制条件能够避免访问主体访问数据库中的所有数据,防止数据库中的数据泄露、被篡改、被破坏。
附图说明
42.为了更清楚地说明本技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
43.图1为本技术一实施例提供的一种访问控制方法的场景示意图;
44.图2为本技术一实施例提供的一种访问控制方法的信令交互图;
45.图3为本技术一实施例提供的一种访问控制方法的流程图;
46.图4为本技术一实施例提供的另一种访问控制方法的流程图;
47.图5为本技术一实施例提供的另一种访问控制方法的流程图;
48.图6为本技术一实施例提供的一种访问控制系统的结构示意图;
49.图7为本技术一实施例提供的一种访问控制装置的结构示意图;
50.图8为本技术一实施例提供的另一种访问控制装置的结构示意图;
51.图9为本技术一实施例提供的电子设备的硬件结构示意图。
具体实施方式
52.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术中的附图,对本技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
53.数据库的数据共享会为数据库带来安全性问题,如何对数据库进行安全性保护,防止数据库中的数据泄露、被篡改或被破坏是目前亟需解决的技术问题。
54.目前,可以通过对查询出来的数据进行遮挡的方式对数据库进行安全性保护,例如系统集成数据访问控制sdk,数据访问控制sdk在返回数据前对无权限访问的数据执行全量遮挡。其能够保持分页的正确性,且系统只需要集成sdk,不需要进行额外修改,并且策略执行点可以获取完整的上下文信息。但是,可能出现大量全量遮挡的数据。
55.也可以通过移除查询结果并继续查询的方式对数据库进行安全性保护,例如系统集成数据访问控制sdk,数据访问控制sdk在返回数据前对无权限访问的数据进行过滤,系统在数据访问控制sdk返回数据行不够的情况下,需要自行继续查询并填满当页数据。其不会大量展示全行被遮挡的数据,且策略执行点可获取完整的上下文信息。但是,系统需要进行定制,对sdk过滤后的数据量进行检查,如果数据量不够需要继续查询,并且如果系统未继续查询,会存在分页问题、性能问题等。
56.针对上述问题,本技术提出了一种访问控制方法,应用服务器接收访问主体发送的查询数据请求,通过数据访问控制sdk从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,并将访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器。访问控制服务器通过构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件,并根据查询数据请求和查询限制条件生成目标查询条件,并将目标查询条件发送至应用服务器。应用服务器在接收到目标查询条件后,将目标查询条件发送至数据库服务器,使得数据服务器根据目标查询条件查询目标数据并将查询到的目标数据发送至应用服务器,应用服务器将目标数据推送至访问主体。这样,应用程序中集成有sdk,在接收到访问主体发送的查询数据请求后,可以从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,而后可以根据访问主体的属性、访问客体的属性、环境属性以及查询数据请求查询目标数据,能够在访问主体的属性信息满足访问客体的权限信息时使得访问主体能够访问目标数据,不同的访问主体、不同的访问客体具有对应的查询限制条件能够避免访问主体访问数据库中的所有数据,防止数据库中的数据泄露、被篡改、被破坏。
57.下面以具体地实施例对本技术的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
58.图1示出了本技术一实施例提供的一种访问控制方法的场景示意图。访问主体102在需要访问数据库中的银行交易记录时,向应用服务器101发送查询数据请求,应用服务器101接收访问主体102发送的查询数据请求,通过数据访问控制sdk从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,并将访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器103。访问控制服务器103在接收到访问主体的属性、访问客体的属性以及环境属性后,通过构建的访问控制上下文模型选择与访问主体的属性、
访问客体的属性以及环境属性匹配的银行类型,并根据银行交易记录和银行类型生成目标银行的交易记录,并将目标银行的交易记录发送至应用服务器101。应用服务器101在接收到目标银行的交易记录后,将目标银行的交易记录发送至数据库服务器104。数据库服务器104接收目标银行的交易记录并查询具体的交易记录数据,并将查询到的具体的交易记录数据发送至应用服务器101,应用服务器101将具体的交易记录数据推送至访问主体102。
59.本技术中,以电子设备为执行主体,执行如下实施例的访问控制方法。具体地,该执行主体可以为电子设备的硬件装置,或者为电子设备中实现下述实施例的软件应用,或者为安装有实现下述实施例的软件应用的计算机可读存储介质,或者为实现下述实施例的软件应用的代码。
60.图2示出了本技术一实施例提供的一种访问控制方法的信令交互图。在图1所示实施例的基础上,如图2所示,本实施例的方法可以包括如下步骤:
61.s101、应用服务器接收访问主体发送的查询数据请求,通过数据访问控制sdk从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性。
62.访问主体在需要访问数据库中的数据时,可以向应用服务器发送查询数据请求。
63.在编写erp、mis、s/b等数据库的应用程序时,需要建立数据库框架,数据库框架至少包括:数据库和数据库中的表、视图、存储过程等。应用程序中集成sdk,sdk能够为数据库框架提供支持,sdk还能够为应用程序提供业务上下文信息,则应用服务器能够从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性。访问主体可以理解为用户,访问主体的属性例如可以包括:访问主体的姓名、角色、组织、id和安全许可等内容。访问客体可以理解为数据,访问客体的属性例如可以包括创建日期、资源所有者、文件名和数据敏感性等。环境属性例如以包括访问时间、数据的位置等。
64.s102、将访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器。
65.不同的访问主体具有对应的访问主体属性,不同的查询数据请求具有对应的访问客体的属性以及环境属性。应用服务器在从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性之后,将访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器。
66.s103、访问控制服务器通过构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件,根据查询数据请求和查询限制条件生成目标查询条件。
67.访问控制服务器预先构建有访问控制上下文模型,访问控制上下文模型以数据本身为几点,从发起访问的用户或应用,以及访问环境出发,抽象出各主体的属性类型,构建由访问主体、访问客体以及访问环境组成的结构模型
68.,其是通过多个访问主体的属性、每个访问主体对应的访问客体属性、每个访问客体属性对应的环境属性以及多个业务数据的访问控制条件生成的,多个访问主体可以是数据库中记录的已访问过数据库的访问主体,多个业务数据可以是已访问过数据库的访问主体所访问的业务数据。访问控制上下文模型例如为abac模型,abac模型能够通过将各种丰富的属性信息进行组合形成访问控制条件,从而灵活适应各种资源访问场景。
69.在接收到访问主体的属性、访问客体的属性以及环境属性后,可以根据预先构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询
限制条件,并根据查询数据请求和查询限制条件生成目标查询条件。
70.s104、将目标查询条件发送至应用服务器。
71.访问控制服务器在接收到目标查询条件后,将目标查询条件发送至应用服务器。
72.s105、应用服务器将目标查询条件发送至数据库服务器。
73.s106、数据库服务器根据目标查询条件查询目标数据,并将查询到的目标数据发送至应用服务器。
74.应用服务器在接收到目标查询条件之后,根据目标查询条件查询目标数据,目标数据即为满足访问主体的属性、访问客体的属性以及环境属性的与查询数据请求对应的数据。
75.s107、应用服务器将目标数据推送至访问主体。
76.本技术提供的访问控制方法,通过配置数据库数据不同的权限策略,保证访问主体在对数据库中的数据进行访问时执行正确的权限逻辑,在不影响正常的业务功能前提下最大程度保证数据库访问的安全性。
77.图3示出了本技术一实施例提供的一种访问控制方法的流程图。如图3所示,以应用服务器为执行主体,本实施例的方法可以包括如下步骤:
78.s201、在应用程序中集成数据访问控制sdk。
79.sdk能够提供数据库访问控制功能,在数据访问的底层集成sdk,避免单点为某一个交易进行单点集成,sdk能够为数据库框架提供支持,sdk还能够为应用程序提供业务上下文信息。
80.s202、接收访问主体发送的原始sql,通过数据访问控制sdk从原始sql中提取访问主体的属性、访问客体的属性以及环境属性,并将访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器。
81.访问主体在需要访问数据库中的数据时,可以向应用服务器发送原始sql语句,应用服务器通过数据访问控制sdk从原始sql语句中提取访问主体的属性、访问客体的属性以及环境属性。数据访问控制sdk能够在接收到数据查询请求时,自动同步其所需的属性数据,而无需过多的人工干预,减少因人为管理造成的系统错误,也减少了为此投入的人力成本。
82.s203、接收访问控制服务器发送的目标sql语句,将目标sql语句发送至数据库服务器。
83.目标sql语句是根据原始sql和查询限制条件生成的。
84.查询限制条件是通过构建的访问控制上下文模型选择的与访问主题的属性、访问客体的属性以及环境属性匹配的限制条件。
85.访问控制服务器在接收到应用服务器发送的访问主体的属性、访问客体的属性以及环境属性时,可以根据上下文而设定的访问控制方法,匹配不同业务场景下的访问控制需求,对原始sql查询语句加入限制条件,最终返回加入数据权限的sql语句查询的数据,即通过预先构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以环境属性匹配的查询限制条件,并将查询限制条件添加至原始sql语句中形成目标sql语句。
86.当业务变化产生新数据属性时,也会自动同步到访问控制上下文模型,并最大化的复用已有的访问控制策略,在系统重新建设前,最小化由业务变化造成的数据泄露风险。
87.s204、接收数据库服务器发送的目标数据,将目标数据推送至访问主体。
88.数据库服务器在接收到目标sql语句后,根据目标sql语句查询目标数据,并将查询到的目标数据发送至应用服务器。
89.应用服务器接收到数据库服务器发送的目标数据后,将目标数据推送至访问主体。
90.本技术提供的访问控制方法,在应用程序中集成访问控制sdk,数据访问控制sdk能够从原始sql中提取访问主体的属性,访问客体的属性以及环境属性,从而能够提供数据访问控制功能,而后查询满足访问主体的属性、访问客体以及环境属性的目标数据,使得访问主体仅访问目标数据,避免数据库中的数据泄露,提高安全性。
91.图4示出了本技术一实施例提供的一种访问控制方法的流程图。如图4所示,以访问控制服务器为执行主体,本实施例的方法可以包括如下步骤:
92.s301、数据服务器接收应用服务器发送的访问主体的属性、访问客体的属性以及环境属性。
93.访问主体的属性、访问客体的属性以及环境属性是应用服务器通过访问控制sdk从访问主体发送的查询数据请求中提取的。需要说明的是,应用服务器还会将查询数据请求与访问主体的属性、访问客体的属性以及环境属性一同发送至访问控制服务器。
94.s302、通过构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件。
95.根据访问控制上下文模型运用可视化abac编辑器能够制定细粒度的访问控制条件。
96.数据服务器在接收到应用服务器发送的访问主体的属性、访问客体的属性以及环境属性后,可以通过预先构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件。
97.应用服务器对查询数据请求赋予对应的查询限制条件。例如,编辑一条根据业务操作类型,对数据查询进行不同查询限制的数据访问控制策略,规则如下:
98.a.如果用户在进行穿透查询,不对进行限制,返回原始查询条件。
99.b.如果用户在进行常规查询,增加查询限制条件:用户的监管范围=交易记录的银行类型。
100.s303、根据查询数据请求和查询限制条件生成目标查询条件,并将目标查询条件发送至应用服务器。
101.应用服务器用于将目标查询条件发送至数据库服务器,并接收数据库服务器发送的根据目标查询条件查询到的目标数据,并将目标数据推送至访问主体。
102.本技术提供的访问控制方法,访问控制服务器在接收到应用服务器发送的访问主体的属性、访问客体的属性以及环境属性之后,根据访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性有关的查询限制条件,并根据查询限制条件和数据查询请求生成目标查询条件,使得数据库服务器根据目标查询条件查询数据,由于数据库中的数据具有对应的访问权限,从而防止数据库中的数据泄露。
103.图5示出了本技术一实施例提供的一种访问控制方法的流程图。如图5所示,以访问控制服务器为执行主体,本实施例的方法可以包括如下步骤:
104.s401、根据多个访问主体的属性、每个访问主体对应的访问客体的属性和环境属性,以及多个业务数据的访问控制条件构建访问控制上下文模型。
105.不同访问主体具有对应的属性,每个访问主体具有对应的访问客体和环境,每个访问客体具有对的属性,每个环境具有对应的属性,即每个访问主体具有对应的访问客体的属性和环境属性。
106.每项业务具有对应的业务数据,不同业务数据具有不同的访问权限,即每个业务数据具有对应的访问控制条件,利用多个访问主体的属性以及每个访问主体对应的访问客体的属性和环境属性,以及多个业务数据的访问控制条件构建访问控制上下文模型,访问控制上下文模型可以为访问主体的属性、访问客体的属性以及环境属性匹配对应的查询限制条件。
107.s402、接收应用服务器发送的访问主体的属性、访问客体的属性以及环境属性,通过构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件。
108.接收应用服务器发送的访问主体的属性、访问客体的属性以及环境属性之后,通过预先构建的访问控制上下文模型为应用服务器发送的访问主体的属性、访问客体的属性以及环境属性匹配对应的查询限制条件。
109.s403、根据查询数据请求和查询限制条件生成目标查询条件,并将目标查询条件发送至应用服务器。
110.数据查询请求可以包括原始sql语句,访问控制服务器解析原始sql语句,将查询限制条件添加至解析后的原始sql语句中生成目标查询语句。
111.应用服务器用于根据目标查询语句查询数据,并将查询到的数据推送至访问主体。
112.本技术提供的访问控制方法,访问控制服务器预习构建访问控制上下文模型,在接收到应用服务器发送的访问主体的属性、访问客体的属性以及环境属性后,根据预先构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件,通过查询限制条件防止访问主体访问数据库中的所有数据,进而有效避免数据库中的数据泄露。
113.图6示出了本技术一实施例提供的一种访问控制系统的结构示意图。如图6所示,本实施例的访问控制系统包括:应用服务器101、访问控制服务器103和数据库服务器104;
114.应用服务器101用于接收访问主体发送的查询数据请求,通过数据访问控制sdk从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,并将访问主体的属性、访问客体的属性以及换信属性发送至访问控制服务器103;
115.访问控制服务器103用于通过构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件,并根据查询数据请求和查询限制条件生成目标查询条件,并将目标查询条件发送至应用服务器101;
116.应用服务器101还用于将目标查询条件发送至数据库服务器104;
117.数据库服务器104用于根据目标查询条件查询目标数据,将查询到的目标数据发送至应用服务器101;
118.应用服务器101还用于将目标数据推送至访问主体。
119.访问控制系统包括控制层、服务层和数据查询层,应用服务器和访问控制服务器可以位于访问控制系统的数据查询层,访问控制sdk可以集成在数据查询层的底层。
120.访问控制服务器可以包括策略选择器和构造器,应用服务器可以包括策略执行器,策略选择器用于通过构建的访问控制上下文选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件,构造器用于根据查询请求数据和查询限制条件生成目标查询条件,策略执行器用于根据目标查询条件查询目标数据,将查询到的目标数据推送至访问主体。
121.可选的,构造器可以包括sql构造器,当查询数据请求包括原始sql语句时,sql构造器可以用于解析原始sql语句,将查询限制条件添加至解析后的原始sql语句中生成目标sql语句。而后,策略执行器可以根据目标sql语句查询目标数据。
122.访问控制服务器还可以包括策略编辑器和数据访问控制模型,策略编辑器用于构建访问控制条件,可以以流程编排模式编辑访问控制执行逻辑。数据访问控制模块可以包括数据访问控制引擎,数据访问控制引擎构建访问控制上下文模型,访问控制上下文模型的访问控制策略是基于一组与请求者、环境和/资源本身相关的特征或属性,每个属性都是一个独立离散的字段,策略决策点通过检查与访问请求相关的各种属性值,以确定是否允许访问或拒绝访问。
123.访问控制系统还可以包括管理模块,管理模块为平台运维管理员提供访问控制策略管理、系统管理、数据资产管理、审计管理的管理功能,以及策略执行引擎,资产测绘,数据存储相关的访问控制服务。访问控制管理包括访问策略制定,策略版本管理等功能;系统管理包括系统配置,应用系统管理员授权等功能;数据资产管理包括数据源,资产分组,数据资产模型等管理功能;而审计管理是为审计管理员提供审计日志查询的功能;策略执行引擎,资产测绘,数据存储是为数据库访问控制的实现提供计算和存储服务。
124.需要说明的是,数据库中的数据源提供数据基础及数据结构,平台接入数据源后,可测绘出数据源下的所有资产,包括资产的数据字段。数据资产是访问控制的目标,对测绘到的资产进行模型构建以及属性管理,可为有效的数据库访问控制提供支撑。
125.图7示出了本技术一实施例提供的一种访问控制装置的结构示意图,如图7所示,本实施例的访问控制装置10用于实现上述任一方法实施例中对应于应用服务器的操作,本实施例的访问控制装置10包括:
126.第一接收模块11,用于接收访问主体发送的查询数据请求,通过数据访问控制sdk从查询数据请求中提取访问主体的属性、访问客体的属性以及环境属性,并将访问主体的属性、访问客体的属性以及环境属性发送至访问控制服务器;
127.第二接收模块12,用于接收访问控制服务器发送的目标查询条件,并将目标查询条件发送至数据库服务器,目标查询条件是根据查询数据请求和查询限制条件生成的,查询限制条件是通过构建的访问控制上下文模型选择的与访问主体的属性、访问客体的属性以及环境属性匹配的限制条件;
128.查询模块13,用于接收数据库服务器发送的目标数据,将目标数据推送至访问主体,目标数据是数据库服务器根据目标查询条件查询到的。
129.本技术实施例提供的访问控制装置10,可执行上述方法实施例,其具体实现原理和技术效果,可参见上述方法实施例,本实施例此处不再赘述。
130.图8示出了本技术一实施例提供的一种访问控制装置的结构示意图,如图8所示,本实施例的访问控制装置20用于实现上述任一方法实施例中对应于访问控制服务器的操作,本实施例的访问控制装置20包括:
131.接收模块21,用于接收应用服务器发送的访问主体的属性、访问客体的属性以及环境属性,访问主体的属性、访问客体的属性以及环境属性是应用服务器通过数据访问控制sdk从访问主体发送的查询数据请求中提取的;
132.选择模块22,用于通过构建的访问控制上下文模型选择与访问主体的属性、访问客体的属性以及环境属性匹配的查询限制条件;
133.生成模块23,用于根据查询数据请求和查询限制条件生成目标查询条件,并将目标查询条件发送至应用服务器,应用服务器用于将目标查询条件发送至数据库服务器并接收数据库服务发送的根据目标查询条件查询到的目标数据以及将目标数据推送至访问主体。
134.本技术实施例提供的访问控制装置20,可执行上述方法实施例,其具体实现原理和技术效果,可参见上述方法实施例,本实施例此处不再赘述。
135.图9示出了本技术实施例提供的一种电子设备的硬件结构示意图。如图9所示,该电子设备30,用于实现上述任一方法实施例中对应于应用服务器或访问控制服务器的操作,本实施例的电子设备30可以包括:存储器31,处理器32和通信接口33。
136.存储器31,用于存储计算机指令。该存储器31可能包含高速随机存取存储器(random access memory,ram),也可能还包括非易失性存储(non-volatile memory,nvm),例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。
137.处理器32,用于执行存储器存储的计算机指令,以实现上述实施例中的访问控制方法。具体可以参见前述方法实施例中的相关描述。该处理器32可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
138.可选地,存储器31既可以是独立的,也可以跟处理器32集成在一起。
139.通信接口33,可以与处理器32连接。处理器32可以控制通信接口33来实现信息的接收和发送的功能。
140.本实施例提供的电子设备可用于执行上述的访问控制方法,其实现方式和技术效果类似,本实施例此处不再赘述。
141.本技术还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机指令,计算机指令被处理器执行时用于实现上述的各种实施方式提供的方法。
142.本技术还提供一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令存储在计算机可读存储介质中。设备的至少一个处理器可以从计算机可读存储介质中读取该计算机指令,至少一个处理器执行该计算机指令使得设备实施上述的各种实施方式提供的方法。
143.本技术实施例还提供一种芯片,该芯片包括存储器和处理器,所述存储器用于存
储计算机指令,所述处理器用于从所述存储器中调用并运行所述计算机指令,使得安装有所述芯片的设备执行如上各种可能的实施方式中所述的方法。
144.最后应说明的是:以上各实施例仅用以说明本技术的技术方案,而非对其限制。尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换。而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1