CN113329011B - 一种安全访问控制方法和装置 - Google Patents

一种安全访问控制方法和装置 Download PDF

Info

Publication number
CN113329011B
CN113329011B CN202110585075.0A CN202110585075A CN113329011B CN 113329011 B CN113329011 B CN 113329011B CN 202110585075 A CN202110585075 A CN 202110585075A CN 113329011 B CN113329011 B CN 113329011B
Authority
CN
China
Prior art keywords
initial
access
node
condition
result
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.)
Active
Application number
CN202110585075.0A
Other languages
English (en)
Other versions
CN113329011A (zh
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.)
Beijing Skyguard Network Security Technology Co ltd
Original Assignee
Beijing Skyguard Network Security 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 Beijing Skyguard Network Security Technology Co ltd filed Critical Beijing Skyguard Network Security Technology Co ltd
Priority to CN202110585075.0A priority Critical patent/CN113329011B/zh
Publication of CN113329011A publication Critical patent/CN113329011A/zh
Application granted granted Critical
Publication of CN113329011B publication Critical patent/CN113329011B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources

Abstract

本发明公开了一种安全访问控制方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取访问数据;为访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,有序二叉决策图包括至少一个条件节点、结果节点以及至少一个条件节点和结果节点之间的多条关联链路,每一个条件节点指示访问策略包括的多个访问条件中的一个目标访问条件;将访问数据与至少一个目标访问条件进行匹配;根据匹配的结果,从多条关联链路中确定目标关联链路,并查找目标关联链路所指向的结果节点;根据目标关联关系所指向的结果节点指示的结果信息,对访问数据进行访问控制。该实施方式能够有效地提高访问速度。

Description

一种安全访问控制方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种安全访问控制方法和装置。
背景技术
在互联网中,不可避免地存在一些具有风险或者异常的访问数据,会对企业管理系统、政府管理系统等系统的安全造成威胁。目前主要通过访问控制策略对访问的行为定义一套或多套规则,并按照规则检测用户访问互联网所产生的访问数据是否安全,以更加严格的规范用户的访问行为。
访问控制策略通常是由一条或多条规则组成,每条规则通常包括由多个条件配合与、或、非等逻辑运算符组成的布尔表达式以及在满足对个条件后(即布尔表达式给出的结果为真)所需要执行的动作组成。现有的访问控制方式需对每一个条件进行匹配,才能得到最终的布尔表达式的结果,这安全匹配所需时长比较长,导致访问速度比较低。
发明内容
有鉴于此,本发明实施例提供一种安全访问控制方法和装置,能够有效地提高访问速度。
为实现上述目的,根据本发明实施例的一个方面,提供了一种安全访问控制方法,包括:
获取访问数据;
为所述访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,所述有序二叉决策图包括至少一个条件节点、结果节点以及至少一个所述条件节点和所述结果节点之间的多条关联链路,每一个所述条件节点指示所述访问策略包括的多个访问条件中的一个目标访问条件;
将所述访问数据与至少一个所述目标访问条件进行匹配;
根据匹配的结果,从多条所述关联链路中确定目标关联链路,并查找所述目标关联链路所指向的结果节点;
根据所述目标关联关系所指向的结果节点指示的结果信息,对所述访问数据进行访问控制。
优选地,安全访问控制方法,其特征在于,进一步包括:
将所述访问策略包括的每一个所述访问条件抽象为对应的初始条件节点;
根据所述访问策略包括的多个所述访问条件之间的运算关系,构建多个所述初始条件节点之间的多条初始关联链路;
为每一条所述初始关联链路生成对应的初始结果节点;
基于多个所述初始条件节点、多种所述初始关联链路以及对应的所述初始结果节点,生成初始有序二叉决策图;
将所述初始有序二叉决策图简化为所述有序二叉决策图。
优选地,所述构建多个所述初始条件节点之间的多条初始关联链路,包括:
将不同的所述访问条件对应的初始条件节点放置到不同层级;
构建相邻层级之间的多种关联关系;
当层级数不少于两层时,在每两个所述层级之间选取关联关系,并组合选取出的多种所述关联关系,得到一条所述初始关联链路。
优选地,所述将所述初始有序二叉决策图简化为所述有序二叉决策图,包括:
针对所述初始结果节点为大于2个的情况,
将多个所述初始结果节点简化为分别指示“是”以及指示“非”的两个结果节点;
根据所述初始有序二叉决策图中所述初始关联链路对应的初始结果节点所指示的信息,调整所述初始关联链路指向指示“是”的结果节点或者指示“非”的结果节点;
根据调整后的结果,删减所述初始条件节点,并调整所述初始关联链路,其中,删除后剩余的所述初始条件节点即为所述条件节点。
优选地,所述删减所述初始条件节点,并调整所述初始关联链路,包括:
针对每一个所述结果节点循环执行下述步骤N1至N3,直至每一个所述结果节点与所述初始条件节点之间仅存在一种关联关系;
N1:判断是否存在至少一个目标初始条件节点仅与一个所述结果节点存在关联关系,如果是,则执行步骤N2;否则,结束当前流程;
N2:删除每一个所述目标初始条件节点;
N3:利用每一个所述目标初始条件节点与对应的上一层级的初始条件节点之间的关联关系,构建上一层级的初始条件节点与所述结果节点之间的关联关系,并执行步骤N1。
优选地,上述安全访问控制方法,进一步包括:计算每一个所述访问条件的运算时长;
所述将不同的所述访问条件对应的初始条件节点放置到不同层级,包括:
按照所述运算时长从小到大的顺序,将所述访问条件对应的初始条件节点从上到下排列到不同层级,其中,相邻两个层级之间的关联关系指示在上的层级上的初始条件节点指向在下的层级的初始条件节点。
第二方面,本发明实施例提供一种安全访问控制装置,包括:获取单元、匹配单元以及访问控制单元,其中,
所述获取单元,用于获取访问数据;
所述匹配单元,用于为所述访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,所述有序二叉决策图包括至少一个条件节点、结果节点以及至少一个所述条件节点和所述结果节点之间的多条关联链路,每一个所述条件节点指示所述访问策略包括的多个访问条件中的一个目标访问条件;将所述访问数据与至少一个所述目标访问条件进行匹配;根据匹配的结果,从多条所述关联链路中确定目标关联链路,并查找所述目标关联链路所指向的结果节点;
所述访问控制单元,用于根据所述目标关联关系所指向的结果节点指示的结果信息,对所述访问数据进行访问控制。
优选地,上述安全访问控制装置,进一步包括:
决策图构建单元,用于将所述访问策略包括的每一个所述访问条件抽象为对应的初始条件节点;根据所述访问策略包括的多个所述访问条件之间的运算关系,构建多个所述初始条件节点之间的多条初始关联链路;为每一条所述初始关联链路生成对应的初始结果节点;基于多个所述初始条件节点、多种所述初始关联链路以及对应的所述初始结果节点,生成初始有序二叉决策图;将所述初始有序二叉决策图简化为所述有序二叉决策图。
上述发明中的一个实施例具有如下优点或有益效果:由于有序二叉决策图包括的每一个条件节点指示所述访问策略包括的多个访问条件中的一个目标访问条件,即有序二叉决策图中的每一个条件节点指示的目标访问条件是从访问策略的多个访问条件中筛选出来的,使得有序二叉决策图所包括的条件节点所指示的目标访问条件的数量比访问策略包括的访问条件的数量少,那么通过访问数据与至少一个目标访问条件进行匹配,可以有效地缩短访问数据的匹配时长,另外,根据匹配的结果,从多条关联链路中确定目标关联链路,并查找目标关联链路所指向的结果节点,可以缩短访问数据安全性的判定时间,从而有效地提高访问数据的控制速度。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的安全访问控制方法的主要流程的示意图;
图2是根据本发明实施例的有序二叉决策图主要结构的示意图;
图3是根据本发明实施例的构建有序二叉决策图的主要流程的示意图;
图4是根据本发明实施例的初始有序二叉决策图主要结构的示意图;
图5是根据本发明实施例的构建初始有序二叉决策图的主要流程的示意图;
图6是根据本发明实施例的简化有序二叉决策图的主要流程的示意图;
图7是根据本发明实施例的初始有序二叉决策图转换为有序二叉决策图主要变化的示意图;
图8是根据本发明另一实施例的简化有序二叉决策图的主要流程的示意图;
图9是根据本发明实施例的安全访问控制装置的主要单元的示意图;
图10是本发明实施例可以应用于其中的示例性系统架构图;
图11是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本发明实施例的一种安全访问控制方法,如图1所示,该安全访问控制方法可包括如下步骤:
步骤S101:获取访问数据;
该访问数据可以为客户端或终端发送给服务器的访问服务器存储的信息或者服务器所支持的网站等。该访问数据可包括用户信息、终端信息/客户端信息、待访问的目标等。
步骤S102:为访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,有序二叉决策图包括至少一个条件节点、结果节点以及至少一个条件节点和结果节点之间的多条关联链路,每一个条件节点指示访问策略包括的多个访问条件中的一个目标访问条件;
一般来说,一个访问策略一般包括多个初始访问条件以及多个初始访问条件之间的布尔表达式,该初始访问条件可以为用户设置的访问规则比如一个访问规则为用户信息是否属于用户白名单、另一个访问规则为客户端信息是否属于客户端白名单等。这些访问规则均为初始访问条件。即:访问策略通常是由一条或多条规则组成,每条规则通常有条件和命中条件后需要执行的动作组成。每个条件配合与、或、非逻辑运算符组成的布尔表达式,而每个条件的结果就是真或假,最终结合逻辑运算符得出最终的结果,真或假,如果条件为真则执行该真后面的动作;如果条件为假则执行该假后面的动作。
比如一个访问策略:A∧(B∨C),其中,A、B以及C分别表征访问策略中不同的访问条件,∧表征合取;∨表征析取。其中,∧(合取)在自然语言中是“并且”的意思。比如令p、q表示任意命题,则p∧q表示p和q的合取,称为合取式,读作“p并且q”。合取式p∧q的真假由p和q的真假决定,即p和q都为真时,p∧q为真,p或q有一个为假则p∧q为假。∨(析取)在自然语言中表示“或”的意思。运算时,如果两个变量中的一个为真,结果即为真,比如,令p、q表示任意命题,则p∨q表示p和q的析取,称为析取式,读作“p或q”。析取式p∨q的真假由p或q的真假决定,即p或q有一个为真时,p∨q为真。
值得说明的是,在访问策略中除上述合取、析取两种逻辑运算之外,还可包括“非(┓)”、“等价(=)”等。
其中,访问条件、目标访问条件、条件节点以及结果节点之间的关系:访问策略中的每一个限定访问的条件或规则均为访问条件,从访问条件中筛选出的构成条件节点的访问条件则为目标访问条件;结果节点指示各个条件节点的组合形成的关联链路所对应的结果。
比如,针对上述访问策略:A∧(B∨C)其对应的有序二叉决策图如图2所示。在图2中,实线表示其起始位置所连接的目标访问条件判断结果为“真”时的关联链路或者关联链路的一部分;虚线表示其起始位置所连接的目标访问条件判断结果为“假”时的关联链路或者关联链路的一部分。则该图2所包括的关联链路有四条,分别:A→0:A判定为假所对应的关联链路;A→B→C→1:A判定为真且B判定为假且C判定为真所对应的关联链路;A→B→C→0:A、B以及C均为假所对应的关联链路;A→B→1:A和B均为真所对应的关联链路。
在该图2中,A、B以及C均为条件节点;0和1为结果节点,其中,0表征不允许访问或者不满足访问策略;1表征允许访问或者满足访问策略。
步骤S103:将访问数据与至少一个目标访问条件进行匹配;
以图2为例,其目标访问条件为A、B以及C所指示的访问条件,则在该步骤中可与A、B以及C所指示的访问条件进行匹配,比如,首先与A指示的访问条件进行匹配,如果匹配结果为“假”,则直接结束匹配,确定匹配的结果为0,如果与A指示的访问条件匹配结果为“真”,则继续与B指示的访问条件进行匹配,如果与B指示的访问条件的匹配结果为“真”,则结束匹配。
步骤S104:根据匹配的结果,从多条关联链路中确定目标关联链路,并查找目标关联链路所指向的结果节点;
比如,与A指示的访问条件的匹配结果为“真”,与B指示的访问条件的匹配结果为“假”,则对应的目标关联链路为A→B→1。其对应的结果节点为1。
步骤S105:根据目标关联关系所指向的结果节点指示的结果信息,对访问数据进行访问控制。
该对访问数据进行访问控制可以为:如果结果节点为0,则禁止访问数据的访问或者忽略该访问数据;如果结果节点为1,则允许访问数据继续访问等。
在图1所示的实施例中,由于有序二叉决策图包括的每一个条件节点指示所述访问策略包括的多个访问条件中的一个目标访问条件,即有序二叉决策图中的每一个条件节点指示的目标访问条件是从访问策略的多个访问条件中筛选出来的,使得有序二叉决策图所包括的条件节点所指示的目标访问条件的数量比访问策略包括的访问条件的数量少,那么通过访问数据与至少一个目标访问条件进行匹配,可以有效地缩短访问数据的匹配时长,另外,根据匹配的结果,从多条关联链路中确定目标关联链路,并查找目标关联链路所指向的结果节点,可以缩短访问数据安全性的判定时间,从而有效地提高访问数据的控制速度。
在本发明实施例中,如图3所示,上述安全访问控制方法可进一步包括如下步骤:
步骤S301:将访问策略包括的每一个访问条件抽象为对应的初始条件节点;
在该步骤中,每一个访问条件所抽象成的初始条件节点的个数可以为1个或者多个,具体地,每一个访问条件所抽象成的初始条件节点的个数由该访问条件所抽象成的初始条件节点在初始有序二叉决策图的层级决定。每一个访问条件对应的1个或多个初始条件节点位于初始有序二叉决策图的同一个层级,不同访问条件对应的初始条件节点位于初始有序二叉决策图的不同层级。比如,如图4所示,初始有序二叉决策图的各个层级从上到下依次为第一层级、第二层级、第三层级、……,其中,访问条件a对应的初始条件节点A位于第一层级,该访问条件a对应的初始条件节点的个数为1个;访问条件b对应的初始条件节点B位于第二层级,该访问条件b对应的初始条件节点的个数为2个;访问条件c对应的初始条件节点C位于第三层级,该访问条件C对应的初始条件节点的个数为4个,以此类推,第n层级中初始条件节点的个数为2n-1。即除最后一个层级之外,每一个层级中的每一个初始条件节点连接下一层级中的两个初始条件节点,比如,如图4所示,第一层级中的初始条件节点A连接第二层级中的两个初始条件节点B,即初始条件节点A的匹配结果为“真”的情况下连接一个初始条件节点B,初始条件节点A的匹配结果为“假”的情况下连接另一个初始条件节点B,以此类推。
步骤S302:根据访问策略包括的多个访问条件之间的运算关系,构建多个初始条件节点之间的多条初始关联链路;
比如,前述的A∧(B∨C),其运算关系是初始条件节点A对应的访问条件且(初始条件节点B对应的访问条件或初始条件节点C对应的访问条件),由于各个匹配的结果可以自由组合,因此,得到的多条初始关联链路:
Figure GDA0003629874470000091
(初始条件节点A对应的访问条件的匹配结果为“真”且初始条件节点B对应的访问条件的匹配结果为“真”且初始条件节点B对应的访问条件的匹配结果为“真”,则该初始关联链路对应的结果节点为1,该1表示为“是”);
Figure GDA0003629874470000092
(初始条件节点A对应的访问条件的匹配结果为“真”且初始条件节点B对应的访问条件的匹配结果为“真”且初始条件节点C对应的访问条件的匹配结果为“假”,则该初始关联链路对应的结果节点为1,该1表示为“是”);
Figure GDA0003629874470000093
(初始条件节点A对应的访问条件的匹配结果为“真”且初始条件节点B对应的访问条件的匹配结果为“假”且初始条件节点C对应的访问条件的匹配结果为“真”,则该初始关联链路对应的结果节点为1,该1表示为“是”);
Figure GDA0003629874470000094
(初始条件节点A对应的访问条件的匹配结果为“真”且初始条件节点B对应的访问条件的匹配结果为“假”且初始条件节点C对应的访问条件的匹配结果为“假”,则该初始关联链路对应的结果节点为0,该0表示为“非”);
Figure GDA0003629874470000095
(初始条件节点A对应的访问条件的匹配结果为“假”且初始条件节点B对应的访问条件的匹配结果为“真”且初始条件节点B对应的访问条件的匹配结果为“真”,则该初始关联链路对应的结果节点为0,该0表示为“非”);
Figure GDA0003629874470000096
(初始条件节点A对应的访问条件的匹配结果为“假”且初始条件节点B对应的访问条件的匹配结果为“真”且初始条件节点C对应的访问条件的匹配结果为“假”,则该初始关联链路对应的结果节点为0,该0表示为“非”);
Figure GDA0003629874470000097
(初始条件节点A对应的访问条件的匹配结果为“假”且初始条件节点B对应的访问条件的匹配结果为“假”且初始条件节点C对应的访问条件的匹配结果为“真”,则该初始关联链路对应的结果节点为0,该0表示为“非”);
Figure GDA0003629874470000098
(初始条件节点A对应的访问条件的匹配结果为“假”且初始条件节点B对应的访问条件的匹配结果为“假”且初始条件节点C对应的访问条件的匹配结果为“假”,则该初始关联链路对应的结果节点为0,该0表示为“非”)。
步骤S303:为每一条初始关联链路生成对应的初始结果节点;
如图4所示的初始有序二叉决策图中,每一条初始关联链路均有对应的初始结果节点。
步骤S304:基于多个初始条件节点、多种初始关联链路以及对应的初始结果节点,生成初始有序二叉决策图;
步骤S305:将初始有序二叉决策图简化为有序二叉决策图。
在本发明实施例中,如图5所示,上述步骤S302的具体实施方式可包括如下步骤:
步骤S501:将不同的访问条件对应的初始条件节点放置到不同层级;
如图4所示,访问条件a对应的初始条件节点A放置到第一层级,访问条件b对应的初始条件节点B放置到第二层级,访问条件c对应的初始条件节点C放置到第三层级等。
步骤S502:构建相邻层级之间的多种关联关系;
比如,图4中示出的第一层级和第二层级之间的关联关系:访问条件a为“真”以及访问条件b为“真”的关联关系,访问条件a为“真”以及访问条件b为“假”的关联关系,访问条件a为“假”以及访问条件b为“真”的关联关系,访问条件a为“假”以及访问条件b为“假”的关联关系。
步骤S503:当层级数不少于两层时,在每两个层级之间选取关联关系,并组合选取出的多种关联关系,得到一条初始关联链路。
比如,第一层级和第二层级之间的关联关系:访问条件a为“真”以及访问条件b为“真”的关联关系以及第二层级和第三层级之间的关联关系:访问条件b为“真”以及访问条件c为“真”的关联关系组成一条初始关联链路。又比如,第一层级和第二层级之间的关联关系:访问条件a为“真”以及访问条件b为“假”的关联关系以及第二层级和第三层级之间的关联关系:访问条件b为“假”以及访问条件c为“真”的关联关系组成一条初始关联链路。
值得说明的是,在该步骤中在每两个层级之间选取关联关系中中间层级对应的匹配结果是一致的,比如,前面选取出的第一层级和第二层级之间的关联关系:访问条件a为“真”以及访问条件b为“真”的关联关系以及第二层级和第三层级之间的关联关系:访问条件b为“真”以及访问条件c为“真”的关联关系组成一条初始关联链路,该选取出的两种关联关系中,中间层级即访问条件b所在的层级对应的匹配结果均为“真”。
通过上述过程构建出的初始有序二叉决策图能够比较直观、真实、准确地反映访问策略各个访问条件之间的关系。
在本发明实施例中,针对初始结果节点为大于2个的情况,如图6所示,上述步骤S305的具体实施方式可包括如下步骤:
步骤S601:将多个初始结果节点简化为分别指示“是”以及指示“非”的两个结果节点;
步骤S602:根据初始有序二叉决策图中初始关联链路对应的初始结果节点所指示的信息,调整初始关联链路指向指示“是”的结果节点或者指示“非”的结果节点;
以简化图4所示的初始有序二叉决策图为例进行说明。对图4所示的初始有序二叉决策图简化的过程如图7所示。如图7所示,将各个结果节点简化为指示“是”的1以及指示“非”的0。然后将原来指向其他结果节点的关联关系调整为指向剩余的两个结果节点中的一个。比如,初始关联链路对应的初始结果节点指示“是”,则该初始关联链路调整后,其结果节点仍然指示“是”。
步骤S603:根据调整后的结果,删减初始条件节点,并调整初始关联链路,其中,删除后剩余的初始条件节点即为条件节点。
如图8所示,该步骤S603的具体实施方式可包括如下步骤:
针对每一个结果节点循环执行下述步骤S801至S803,直至每一个结果节点与初始条件节点之间仅存在一种关联关系;
步骤S801:判断是否存在至少一个目标初始条件节点仅与一个结果节点存在关联关系,如果是,则执行步骤S802;否则,结束当前流程;
如图7中第(2)步所示,在调整结果节点之后,存在3个初始条件节点仅与一个结果节点存在关联关系(分别为图7中第(2)步的虚线框出的3个初始条件节点C),该图7中虚线框出的3个初始条件节点C即为目标初始条件节点。
步骤S802:删除每一个目标初始条件节点;
步骤S803:利用每一个目标初始条件节点与对应的上一层级的初始条件节点之间的关联关系,构建上一层级的初始条件节点与结果节点之间的关联关系,并执行步骤S801。
经过步骤S802和步骤S803可得到图7中第(3)步所示出的结果。然后继续以图7中第(3)步所示出的结果为基础,执行步骤S801,得出存在1个初始条件节点仅与一个结果节点存在关联关系(为图7中第(3)步的虚线框出的1个初始条件节点B),该图7中虚线框出的3个初始条件节点C即为目标初始条件节点。继续经过步骤S802和步骤S803得到图7中第(4)步的结果。由于图7中第(4)步的结果不存在目标初始条件节点,则结束循环,得到的有序二叉决策图即为图7中第(4)步的结果。
通过上述过程大大简化了有序二叉决策图,同时能够保证有序二叉决策图简化过程的准确性。
在本发明实施例中,上述方法可进一步包括:计算每一个访问条件的运算时长;相应地,将不同的访问条件对应的初始条件节点放置到不同层级的具体实施方式可包括:按照运算时长从小到大的顺序,将访问条件对应的初始条件节点从上到下排列到不同层级,其中,相邻两个层级之间的关联关系指示在上的层级上的初始条件节点指向在下的层级的初始条件节点。通过该过程可以优先匹配运算时长短的访问条件,通过上述简化得到的有序二叉决策图对于有的匹配过程可避免匹配运算时长比较长的访问条件,比如,图7所示的各个节点A、B以及C对应的访问条件的的时长顺序为A≤B≤C,则在匹配到A对应的访问条件的匹配结果为指示“非”的0时,则可直接结束匹配过程,进一步提高了访问数据匹配和处理效率。
比如,一个访问策略包括:访问条件a:用户来源IP是172.20.20.1-172.20.20.255范围内,访问条件b:访问的URL类别是视频或购物;以及访问条件c:访问的文件类型是MP4,阻止该访问。那么可以写成以下描述:
如果用户的IP在172.20.20.1-172.20.20.255范围内,并且访问的站点是视频、购物类,或者访问的文件类型是MP4,则阻止访问。
访问条件a:用户IP在172.20.20.1-172.20.20.255。
访问条件b:访问的URL属于视频、购物类网站。
访问条件c:访问的文件类型是MP4。
则表达式可以表示成如下:
If(a and(b or c))
Action。(该Action为拒绝访问操作)
上述访问条件a、访问条件b以及访问条件c可抽象为图4和图7所示的对应的节点A、B以及C。即通过有序二叉决策图实现对访问策略规范化管理。
如图9所示,本发明实施例提供一种安全访问控制装置900,该安全访问控制装置900可包括:获取单元901、匹配单元902以及访问控制单元903,其中,
获取单元901,用于获取访问数据;
匹配单元902,用于为访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,有序二叉决策图包括至少一个条件节点、结果节点以及至少一个条件节点和结果节点之间的多条关联链路,每一个条件节点指示访问策略包括的多个访问条件中的一个目标访问条件;将访问数据与至少一个目标访问条件进行匹配;根据匹配的结果,从多条关联链路中确定目标关联链路,并查找目标关联链路所指向的结果节点;
访问控制单元903,用于根据目标关联关系所指向的结果节点指示的结果信息,对访问数据进行访问控制。
在本发明实施例中,如图9所示,安全访问控制装置900可进一步包括:
决策图构建单元904,用于将访问策略包括的每一个访问条件抽象为对应的初始条件节点;根据访问策略包括的多个访问条件之间的运算关系,构建多个初始条件节点之间的多条初始关联链路;为每一条初始关联链路生成对应的初始结果节点;基于多个初始条件节点、多种初始关联链路以及对应的初始结果节点,生成初始有序二叉决策图;将初始有序二叉决策图简化为有序二叉决策图。
在本发明实施例中,决策图构建单元904,进一步用于将不同的访问条件对应的初始条件节点放置到不同层级;构建相邻层级之间的多种关联关系;当层级数不少于两层时,在每两个层级之间选取关联关系,并组合选取出的多种关联关系,得到一条初始关联链路。
在本发明实施例中,决策图构建单元904,进一步用于针对初始结果节点为大于2个的情况,将多个初始结果节点简化为分别指示“是”以及指示“非”的两个结果节点;根据初始有序二叉决策图中初始关联链路对应的初始结果节点所指示的信息,调整初始链路指向指示“是”的结果节点或者指示“非”的结果节点;根据调整后的结果,删减初始条件节点,并调整初始关联链路,其中,删除后剩余的初始条件节点即为条件节点。
在本发明实施例中,决策图构建单元904,进一步用于针对每一个所述结果节点循环执行下述步骤N1至N3,直至每一个结果节点与初始条件节点之间仅存在一种关联关系;
N1:判断是否存在至少一个目标初始条件节点仅与结果节点存在关联关系,如果是,则执行步骤N2;否则,结束当前流程;
N2:删除每一个目标初始条件节点;
N3:利用每一个目标初始条件节点与对应的上一层级的初始条件节点之间的关联关系,构建上一层级的初始条件节点与结果节点之间的关联关系,并执行步骤N1。
在本发明实施例中,决策图构建单元904,进一步用于计算每一个访问条件的运算时长;按照运算时长从小到大的顺序,将访问条件对应的初始条件节点从上到下排列到不同层级,其中,相邻两个层级之间的关联关系指示在上的层级上的初始条件节点指向在下的层级的初始条件节点。
图10示出了可以应用本发明实施例的安全访问控制方法或安全访问控制装置的示例性系统架构1000。
如图10所示,系统架构1000可以包括终端设备1001、1002、1003,网络1004和服务器1005。网络1004用以在终端设备1001、1002、1003和服务器1005之间提供通信链路的介质。网络1004可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备1001、1002、1003通过网络1004与服务器1005交互,以接收或发送消息等。终端设备1001、1002、1003上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备1001、1002、1003可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器1005可以是提供各种服务的服务器,例如对用户利用终端设备1001、1002、1003所发送的访问数据提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的访问数据等数据进行分析等处理,并将处理结果(例如符合访问条件或者不符合访问条件--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的安全访问控制方法一般由服务器1005执行,相应地,安全访问控制装置一般设置于服务器1005中。
应该理解,图10中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图11,其示出了适于用来实现本发明实施例的终端设备的计算机系统1100的结构示意图。图11示出的终端设备或服务器仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图11所示,计算机系统1100包括中央处理单元(CPU)1101,其可以根据存储在只读存储器(ROM)1102中的程序或者从存储部分1108加载到随机访问存储器(RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有系统1100操作所需的各种程序和数据。CPU 1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
以下部件连接至I/O接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被中央处理单元(CPU)1101执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、匹配单元以及访问控制单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取访问数据的单元”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取访问数据;为访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,有序二叉决策图包括至少一个条件节点、结果节点以及至少一个条件节点和所述结果节点之间的多条关联链路,每一个条件节点指示访问策略包括的多个访问条件中的一个目标访问条件;将访问数据与至少一个目标访问条件进行匹配;根据匹配的结果,从多条关联链路中确定目标关联链路,并查找目标关联链路所指向的结果节点;根据目标关联关系所指向的结果节点指示的结果信息,对访问数据进行访问控制。
根据本发明实施例的技术方案,由于有序二叉决策图包括的每一个条件节点指示所述访问策略包括的多个访问条件中的一个目标访问条件,即有序二叉决策图中的每一个条件节点指示的目标访问条件是从访问策略的多个访问条件中筛选出来的,使得有序二叉决策图所包括的条件节点所指示的目标访问条件的数量比访问策略包括的访问条件的数量少,那么通过访问数据与至少一个目标访问条件进行匹配,可以有效地缩短访问数据的匹配时长,另外,根据匹配的结果,从多条关联链路中确定目标关联链路,并查找目标关联链路所指向的结果节点,可以缩短访问数据安全性的判定时间,从而有效地提高访问数据的控制速度。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种安全访问控制方法,其特征在于,包括:
获取访问数据;
为所述访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,所述有序二叉决策图包括至少一个条件节点、结果节点以及至少一个所述条件节点和所述结果节点之间的多条关联链路,每一个所述条件节点指示所述访问策略包括的多个访问条件中的一个目标访问条件;
将所述访问数据与至少一个所述目标访问条件进行匹配;
根据匹配的结果,从多条所述关联链路中确定目标关联链路,并查找所述目标关联链路所指向的结果节点;
根据所述目标关联关系所指向的结果节点指示的结果信息,对所述访问数据进行访问控制;
所述安全访问控制方法进一步包括:
将所述访问策略包括的每一个所述访问条件抽象为对应的初始条件节点;
构建多个所述初始条件节点之间的多条初始关联链路;
为每一条所述初始关联链路生成对应的初始结果节点;
基于多个所述初始条件节点、多种所述初始关联链路以及对应的所述初始结果节点,得到所述有序二叉决策图。
2.根据权利要求1所述的安全访问控制方法,其特征在于,
所述基于多个所述初始条件节点、多种所述初始关联链路以及对应的所述初始结果节点,得到所述有序二叉决策图,包括:
基于多个所述初始条件节点、多种所述初始关联链路以及对应的所述初始结果节点,生成初始有序二叉决策图;
将所述初始有序二叉决策图简化为所述有序二叉决策图。
3.根据权利要求1所述的安全访问控制方法,其特征在于,所述构建多个所述初始条件节点之间的多条初始关联链路,包括:
将不同的所述访问条件对应的初始条件节点放置到不同层级;
构建相邻层级之间的多种关联关系;
当层级数不少于两层时,在每两个所述层级之间选取关联关系,并组合选取出的多种所述关联关系,得到一条所述初始关联链路。
4.根据权利要求2所述的安全访问控制方法,其特征在于,所述将所述初始有序二叉决策图简化为所述有序二叉决策图,包括:
针对所述初始结果节点为大于2个的情况,
将多个所述初始结果节点简化为分别指示“是”以及指示“非”的两个结果节点;
根据所述初始有序二叉决策图中所述初始关联链路对应的初始结果节点所指示的信息,调整所述初始关联链路指向指示“是”的结果节点或者指示“非”的结果节点;
根据调整后的结果,删减所述初始条件节点,并调整所述初始关联链路,其中,删除后剩余的所述初始条件节点即为所述条件节点。
5.根据权利要求4所述的安全访问控制方法,其特征在于,所述删减所述初始条件节点,并调整所述初始关联链路,包括:
针对每一个所述结果节点循环执行下述步骤N1至N3,直至每一个所述结果节点与所述初始条件节点之间仅存在一种关联关系;
N1:判断是否存在至少一个目标初始条件节点仅与一个所述结果节点存在关联关系,如果是,则执行步骤N2;否则,结束当前流程;
N2:删除每一个所述目标初始条件节点;
N3:利用每一个所述目标初始条件节点与对应的上一层级的初始条件节点之间的关联关系,构建上一层级的初始条件节点与所述结果节点之间的关联关系,并执行步骤N1。
6.根据权利要求3所述的安全访问控制方法,其特征在于,
进一步包括:计算每一个所述访问条件的运算时长;
所述将不同的所述访问条件对应的初始条件节点放置到不同层级,包括:
按照所述运算时长从小到大的顺序,将所述访问条件对应的初始条件节点从上到下排列到不同层级,其中,相邻两个层级之间的关联关系指示在上的层级上的初始条件节点指向在下的层级的初始条件节点。
7.一种安全访问控制装置,其特征在于,包括:获取单元、匹配单元以及访问控制单元,其中,
所述获取单元,用于获取访问数据;
所述匹配单元,用于为所述访问数据选择出预设的用于指示访问策略的有序二叉决策图,其中,所述有序二叉决策图包括至少一个条件节点、结果节点以及至少一个所述条件节点和所述结果节点之间的多条关联链路,每一个所述条件节点指示所述访问策略包括的多个访问条件中的一个目标访问条件;将所述访问数据与至少一个所述目标访问条件进行匹配;根据匹配的结果,从多条所述关联链路中确定目标关联链路,并查找所述目标关联链路所指向的结果节点;
所述访问控制单元,用于根据所述目标关联关系所指向的结果节点指示的结果信息,对所述访问数据进行访问控制;
所述安全访问控制装置,进一步包括:
决策图构建单元,用于将所述访问策略包括的每一个所述访问条件抽象为对应的初始条件节点;构建多个所述初始条件节点之间的多条初始关联链路;为每一条所述初始关联链路生成对应的初始结果节点;基于多个所述初始条件节点、多种所述初始关联链路以及对应的所述初始结果节点,得到所述有序二叉决策图。
8.根据权利要求7所述的安全访问控制装置,其特征在于,
决策图构建单元,用于根据所述访问策略包括的多个所述访问条件之间的运算关系,构建多个所述初始条件节点之间的多条初始关联链路;基于多个所述初始条件节点、多种所述初始关联链路以及对应的所述初始结果节点,生成初始有序二叉决策图;将所述初始有序二叉决策图简化为所述有序二叉决策图。
9.一种安全访问控制电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN202110585075.0A 2021-05-27 2021-05-27 一种安全访问控制方法和装置 Active CN113329011B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110585075.0A CN113329011B (zh) 2021-05-27 2021-05-27 一种安全访问控制方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110585075.0A CN113329011B (zh) 2021-05-27 2021-05-27 一种安全访问控制方法和装置

Publications (2)

Publication Number Publication Date
CN113329011A CN113329011A (zh) 2021-08-31
CN113329011B true CN113329011B (zh) 2022-07-08

Family

ID=77421660

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110585075.0A Active CN113329011B (zh) 2021-05-27 2021-05-27 一种安全访问控制方法和装置

Country Status (1)

Country Link
CN (1) CN113329011B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110691061A (zh) * 2018-07-06 2020-01-14 电信科学技术研究院有限公司 一种资源访问控制方法及装置
CN111131058A (zh) * 2019-11-25 2020-05-08 泰康保险集团股份有限公司 访问量控制方法和装置
WO2020127400A1 (fr) * 2018-12-18 2020-06-25 Thales Procédé et système d'optimisation de contrôle d'accès

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110691061A (zh) * 2018-07-06 2020-01-14 电信科学技术研究院有限公司 一种资源访问控制方法及装置
WO2020127400A1 (fr) * 2018-12-18 2020-06-25 Thales Procédé et système d'optimisation de contrôle d'accès
CN111131058A (zh) * 2019-11-25 2020-05-08 泰康保险集团股份有限公司 访问量控制方法和装置

Also Published As

Publication number Publication date
CN113329011A (zh) 2021-08-31

Similar Documents

Publication Publication Date Title
KR102262220B1 (ko) 여러 애플리케이션들을 디스플레이하기 위한 시스템 및 방법
US20190042552A1 (en) Identifying and mapping emojis
US20190384799A1 (en) Dynamically tagging webpages based on critical words
CN114239033A (zh) 页面权限控制方法、装置、电子设备及计算机可读介质
CN110781505A (zh) 系统构建方法及装置、检索方法及装置、介质和设备
US11049024B2 (en) Enhancement of massive data ingestion by similarity linkage of documents
CN113378093A (zh) 资源发布策略的确定方法、装置、电子设备及存储介质
CN113329011B (zh) 一种安全访问控制方法和装置
CN116560661A (zh) 代码优化方法、装置、设备及存储介质
CN112052152A (zh) 一种模拟测试的方法和装置
CN113722007B (zh) Vpn分支设备的配置方法、装置及系统
CN113760274B (zh) 一种前端组件逻辑注入方法和装置
US11029980B2 (en) Customizable animations
CN113946816A (zh) 基于云服务的鉴权方法、装置、电子设备和存储介质
CN113626747A (zh) 面包屑导航的生成方法和装置
CN111737218A (zh) 一种共享文件的方法及装置
CN113626472A (zh) 一种处理订单数据的方法和装置
US10922366B2 (en) Self-adaptive web crawling and text extraction
CN109213815B (zh) 控制执行次数的方法、装置、服务器终端以及可读介质
CN113127416A (zh) 数据查询方法和装置
CN113079165B (zh) 一种访问处理方法和装置
CN113760886B (zh) 提供数据服务的方法、装置、设备和计算机可读介质
CN117170821B (zh) 一种业务处理方法、装置、电子设备及计算机可读介质
CN114679468B (zh) 文件传输方法、装置、电子设备及计算机可读存储介质
US20220236998A1 (en) Systems and methods for bootstrap management

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
GR01 Patent grant
GR01 Patent grant