一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种访问控制方法和装置与流程

2022-11-14 14:19:08 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,尤其涉及一种访问控制方法和装置。


背景技术:

2.在网络安全的背景下,一些企业通过访问控制策略来限定和控制用户对网络资源比如游戏网站、购物平台、企业以外的系统等的使用情况。对于不同的网络资源一般是在不同时间段配置有不同的访问策略,比如,为网络资源a在时间段t1内设置访问策略ts1,为网络资源a在时间段t2内设置访问策略ts2、ts3,为网络资源b在时间段t2内设置访问策略ts3等。
3.目前,基于访问策略控制访问的过程主要是,将用户访问的时间转换为周几几点的方式与访问策略配置的时间段进行一一对比,从而依据匹配到的策略控制访问。当策略配置比较多,时间的控制粒度逐步精细的时候,匹配也将变得越来越慢,导致访问效率低下。


技术实现要素:

4.有鉴于此,本发明实施例提供一种访问控制方法和装置,能够快速地为访问请求匹配对应的访问策略,以有效地提高访问效率。
5.为实现上述目的,根据本发明实施例的一个方面,提供了一种访问控制方法,包括:
6.确定终端发起的访问请求所对应的访问时间以及资源特征信息;
7.基于预设的策略平衡树,查找与所述访问时间以及所述资源特征信息相匹配的访问策略,其中,所述策略平衡树是基于多个时间段抽象出的节点和多个所述时间段的时序构建出的,每一个所述节点对应有一个或多个访问策略;
8.在查找到的情况下,根据查找到的访问策略控制所述访问请求。
9.可选地,所述查找与所述访问时间以及所述资源特征信息相匹配的访问策略,包括:
10.在所述策略平衡树中查找所述访问时间所属的目标节点;
11.从所述目标节点对应的一个或多个访问策略中,查找与所述资源特征信息相匹配的目标访问策略。
12.可选地,上述访问控制方法,还包括:
13.为多个所述时间段构建包含有数值区间的节点,并构建对应于所述节点的策略集合,其中,所述数值区间指示所述时间段或者所述时间段中的部分时间段,以使抽象出的所有节点之间为全异关系;
14.为多个所述节点构建策略平衡树;
15.根据多个所述时间段与多个访问策略之间的关联关系,将多个所述访问策略添加到对应的策略集合。
16.可选地,所述为多个所述时间段生成包含有数值区间的节点,包括:
17.将多个所述时间段的起始时间和终止时间分别转换为整数;
18.基于多个所述起始时间的整数和多个所述终止时间的整数,生成多个数值区间,其中,多个所述数值区间之间互不重叠;
19.针对每一个所述数据区间,构建包含所述数值区间的节点。
20.可选地,所述生成多个数值区间,包括:
21.对多个所述起始时间的整数和多个所述终止时间的整数进行排序;
22.利用排序后的每相邻两个整数构建出数据区间。
23.可选地,所述生成多个数值区间,包括:
24.利用对应于每一个所述时间段的起始时间的整数和终止时间的整数构建初始数值区间;
25.顺序针对每一个所述初始数值区间,执行下述操作:
26.将所述初始数值区间与已得到的数值区间进行对比;
27.在对比的结果指示所述初始数值区间与至少一个所述数值区间之间存在部分重叠的情况下,则将所述初始数值区间和/或存在部分重叠的数据区间拆分成与任意已得的数值区间均不重叠的一个或多个数值区间;
28.在对比的结果指示所述初始数值区间与任意已得的数值区间均不重叠的情况下,则将所述初始数值区间作为所述数值区间。
29.可选地,上述访问控制方法,还包括:
30.利用多个所述时间段的先后顺序,为多个所述节点构建双链表;
31.根据所述双链表,执行为多个所述节点构建策略平衡树的步骤。
32.可选地,上述访问控制方法,还包括:
33.接收新增的策略配置信息;
34.为所述新增的策略配置信息包括的时间段生成新的节点以及对应于所述新的节点的策略集合;
35.将所述新的节点插入所述策略平衡树,并将所述策略配置信息包括的访问策略添加到对应于所述新的节点的策略集合中。
36.可选地,所述将所述初始数值区间和/或存在部分重叠的数据区间拆分成与任意已得的数值区间均不重叠的一个或多个数值区间,包括:
37.在所述初始数值区间从属于所述数据区间的情况下,从所述数据区间中拆分出小于所述初始数值区间的子区间和/或大于所述初始数值区间的子区间;
38.在所述数据区间从属于所述初始数值区间的情况下,从所述初始数据区间中拆分出小于所述数值区间的子区间和/或大于所述数值区间的子区间;
39.在所述初始数值区间与所述数据区间之间存在交叉区间的情况下,从所述初始数值区间和所述数据区间中拆分出交叉区间、小于所述交叉区间的子区间以及大于所述交叉区间的子区间。
40.第二方面,本发明实施例提供一种访问控制装置,包括:确定模块、查找模块以及控制模块,其中,
41.所述确定模块,用于确定终端发起的访问请求所对应的访问时间以及资源特征信
息;
42.所述查找模块,用于基于预设的策略平衡树,查找与所述访问时间以及所述资源特征信息相匹配的访问策略,其中,所述策略平衡树是基于多个时间段抽象出的节点和多个所述时间段的先后顺序构建出的,每一个所述节点对应有一个或多个访问策略;
43.所述控制模块,用于在所述查找模块查找到相匹配的访问策略的情况下,根据查找到的访问策略控制所述访问请求。
44.上述发明中的一个实施例具有如下优点或有益效果:由于策略平衡树是基于多个时间段抽象出的节点和多个时间段的先后顺序构建出的,每一个节点对应有一个或多个访问策略,那么,通过策略平衡树可以快速地查找与访问请求的访问时间以及资源特征信息相匹配的访问策略,从而可以有效地提高访问效率。
45.上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
46.附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
47.图1是根据本发明实施例的访问控制方法的主要流程的示意图;
48.图2是根据本发明实施例的构建策略平衡树的主要流程的示意图;
49.图3(a)、图3(b)、图3(c)和图3(d)是根据本发明实施例的节点之间的多种关系的示意图;
50.图4是根据本发明实施例的为多个时间段构建包含有数值区间的节点的主要流程的示意图;
51.图5是根据本发明实施例的生成多个数值区间的第一种实现方式的主要流程的示意图;
52.图6是根据本发明实施例的第一种策略平衡树的结构示意图;
53.图7是根据本发明实施例的第二种策略平衡树的结构示意图;
54.图8是根据本发明实施例的生成多个数值区间的第二种实现方式的主要流程的示意图;
55.图9是根据本发明实施例的第三种策略平衡树的结构示意图;
56.图10是根据本发明实施例的第四种策略平衡树的结构示意图;
57.图11是根据本发明实施例的为策略平衡树新增节点的主要流程的示意图;
58.图12是根据本发明实施例的查找访问策略的主要流程的示意图;
59.图13是根据本发明实施例的访问控制装置的主要模块的示意图;
60.图14是本发明实施例可以应用于其中的示例性系统架构图;
61.图15是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
62.以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识
到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
63.图1是根据本发明实施例的一种访问控制方法的主要流程示意图。如图1所示,该访问控制方法可包括如下步骤:
64.步骤s101:确定终端发起的访问请求所对应的访问时间以及资源特征信息;
65.其中,访问时间可以是指终端发起访问请求过程中所携带的终端设备的时间,也可以是服务端或者网关接收到访问请求的时间。
66.其中,资源特征信息一般是指用于指示所需访问的网站的网站标识、所需访问的网站的url地址、所需访问的网站的ip地址等。
67.步骤s102:基于预设的策略平衡树,查找与访问时间以及资源特征信息相匹配的访问策略,其中,策略平衡树是基于多个时间段抽象出的节点和多个时间段的时序构建出的,每一个节点对应有一个或多个访问策略;
68.其中,每一个节点包括有配置的一个时间段或者配置的一个时间段内的子时间段,同时,各个节点所包括的时间段之间没有重合。
69.其中,多个时间段的时序是指多个时间段在时间上的排序,一般来说,策略平衡树中相对应的一组父节点和子节点一般对应有相邻的两个时间段。
70.步骤s103:在查找到的情况下,根据查找到的访问策略控制访问请求。
71.上述访问策略可以是用于根据实际需求、为不同网站资源进行差异化配置的、用以控制网站资源的访问。比如,访问策略ts1的策略id为ts1,url控制:游戏网站,购物网站;时段:周一、周二、周三、周四以及周五的09:00-18:00;动作:禁止访问。访问策略ts2的策略id为ts2,url控制:招聘网站,境外网站;时段:周一、周二、周三、周四及周五的00:00-24:00;动作:内容检测。访问策略ts3的策略id为ts3,应用控制:游戏,时段:周一、周二、周三、周四及周五的00:00-06:00 19:00-24:00;动作:禁止访问。访问策略ts4的策略id为ts4,应用控制:即时通信应用;时段:周一、周二、周三、周四及周五的09:00-12:00 16:00-18:00,动作:禁止访问等。
72.在图1所示的实施例中,由于策略平衡树是基于多个时间段抽象出的节点和多个时间段的先后顺序构建出的,每一个节点对应有一个或多个访问策略,那么,通过策略平衡树可以快速地查找与访问请求的访问时间以及资源特征信息相匹配的访问策略,从而可以有效地提高访问效率。
73.另外,通过策略平衡树可以将时间控制信息统一管理,一次性时间匹配便可以获得所有匹配中的策略信息,有助于提高匹配效率。
74.上述访问控制方法还可构建策略平衡树,具体地,如图2所示,上述构建策略平衡树可包括如下步骤:
75.步骤s201:为多个时间段构建包含有数值区间的节点,并构建对应于节点的策略集合,其中,数值区间指示时间段或者时间段中的部分时间段,以使抽象出的所有节点之间为全异关系;
76.其中,数值区间是由时间段的起始时间和终止时间转换来的数值。
77.其中,节点之间的关系可以如图3所示有多种关系。比如,图3(a)所示的node1与node2为全同关系(即node1的数值区间与node2的数值区间完全相同),图3(b)所示的node3
0600、2-1900~2-2400、3-0000~3-0600、3-1900~3-2400、4-0000~4-0600、4-1900~4-2400、5-0000~5-0600、5-1900~5-2400、1-0900~1-1200、1-1600~1-1800、2-0900~2-1200、2-1600~2-1800、3-0900~3-1200、3-1600~3-1800、4-0900~4-1200、4-1600~4-1800、5-0900~5-1200、5-1600~5-1800。
96.通过对上述各个时间段的起始时间的整数和终止时间的整数进行排序,得到:1-0000、1-0600、1-0900、1-1200、1-1600、1-1800、1-1900、1-2400、2-0000、2-0600、2-0900、2-1200、2-1600、2-1800、2-1900、2-2400、3-0000、3-0600、3-0900、3-1200、3-1600、3-1800、3-1900、3-2400、4-0000、4-0600、4-0900、4-1200、4-1600、4-1800、4-1900、4-2400、5-0000、5-0600、5-0900、5-1200、5-1600、5-1800、5-1900、5-2400。
97.另外,下面以上述访问策略ts1的周一和周二两个时间段周一的9:00~18:00、周二的9:00~18:00,访问策略ts2周一的时间段00:00~24:00,访问策略ts3周一的两个时间段00:00~6:00、19:00~24:00,以及策略ts4周一的两个时间段9:00~12:00、16:00~18:00为例对基于上述将多个时间段的起始时间和终止时间分别转换为整数的第二种实现方式以及对整数进行排序进行说明。比如,周一的9:00~18:00转换成整数32400~64800、周二的9:00~18:00转换成整数118800~151200、周一的时间段00:00~6:00转换成整数0~21600、周一的时间段19:00~24:00转换成整数68400~86400、周一的时间段9:00~12:00转换成整数32400~43200、周一的时间段16:00~18:00转换成整数57600~64800。对各个时间的整数进行排序得到0、21600、32400、43200、57600、64800、68400、86400、118800、151200。
98.步骤s502:利用排序后的每相邻两个整数构建出数据区间。
99.以上述访问策略ts1的周一和周二两个时间段周一的9:00~18:00、周二的9:00~18:00,访问策略ts2周一的时间段00:00~24:00,访问策略ts3周一的两个时间段00:00~6:00、19:00~24:00,以及策略ts4周一的两个时间段9:00~12:00、16:00~18:00为例,通过步骤s501得到的排序后的第一种整数:1-0000、1-0600、1-0900、1-1200、1-1600、1-1800、1-1900、1-2400、2-0900、2-1800,相应地,数据区间:1-0000~1-0600、1-0601~1-0900、1-0901~1-1200、1-1201~1-1600、1-1601~1-1800、1-1801~1-1900、1-1901~1-2400、1-2401~2-0900、2-0901~2-1800,该部分数据区间对应的一种策略平衡树的一部分可如图6所示。另外,通过步骤s501得到的排序后的第一种整数:0、21600、32400、43200、57600、64800、68400、86400、118800、151200,相应地,数据区间:0~21600、21601~32400、32401~43200、43201~57600、57601~64800、64801~68400、68401~86400、86401~118800、118801~151200,该部分数据区间对应的一种策略平衡树的一部分可如图7所示。其中,0~21600对应的策略是ts2、ts3,21601~32400对应的策略ts2,32401~43200对应的策略:ts1、ts2、ts4,43201~57600对应的策略:ts1、ts2,57601~64800对应的策略:ts1、ts4,64801~68400对应的策略:ts2,68401~86400对应的策略:ts2、ts3,118800~151200对应的策略:ts1等。
100.更优选地,图5所示的生成多个数值区间的第一种具体实施方式主要是针对各个策略所对应有比较连贯的各种时间段或者具有比较高的重叠的各个时间段,构建数值区间。通过上述过程可以实现预先构建出比较多的节点,后续在增加新的策略的情况下,增加的新的策略对应的数值区间的节点已经存在的概率比较大,后续可直接将新的策略的id添
加到对应的策略集合中,而无需再修改策略平衡树,以有效地提高访问控制效率。
101.值得说明的是,上述图6和图7仅是示例性地给出的策略平衡树的一种结构,任何基于上述结构的变形得到的策略平衡树均在本技术的保护范围内。
102.如图8所示,上述步骤s402的第二种具体实施方式可包括如下步骤:
103.步骤s801:利用对应于每一个时间段的起始时间的整数和终止时间的整数构建初始数值区间;
104.比如,针对基于上述将多个时间段的起始时间和终止时间分别转换为整数的第一种实现方式得到的对应于各个时间段的整数来说,上述访问策略ts1的周一和周二两个时间段的整数得到的初始数值区间:1-0900~1-1800、2-0900~2-1800,访问策略ts2周一的一个时间段的整数得到的初始数值区间:1-0000~1-2400,访问策略ts3周一的两个时间段的整数得到的初始数值区间:1-0000~1-0600、1-1900~1-2400,以及策略ts4周一的两个时间段的整数得到的初始数值区间:1-0900~1-1200、1-1600~1-1800。
105.又比如,针对基于上述将多个时间段的起始时间和终止时间分别转换为整数的第二种实现方式得到的对应于各个时间段的整数来说,上述访问策略ts1的周一和周二两个时间段的整数得到的初始数值区间:32400~64800、118800~151200,访问策略ts2周一的一个时间段的整数得到的初始数值区间:0~86400,访问策略ts3周一的两个时间段的整数得到的初始数值区间:68400~86400、32400~43200,以及策略ts4周一的一个时间段的整数得到的初始数值区间:57600~64800。
106.值得说明的是,上述初始数值区间仅是示例性地给出的一部分,并不是构建策略平衡树的所有数值区间。
107.顺序针对每一个初始数值区间,执行下述步骤s802至步骤s804:
108.步骤s802:将初始数值区间与已得到的数值区间进行对比;
109.在该步骤中,在不存在策略平衡树的情况下,可以选择任意的初始数值区间初始数值区间作为已得到的数值区间,比如,选择1-0900~1-1800作为已得到的数值区间,针对选择的2-0900~2-1800作为初始数值区间来说,由于其与1-0900~1-1800不存在重叠,则直接将2-0900~2-1800作为策略平衡树的数值区间。
110.步骤s803:在对比的结果指示初始数值区间与至少一个数值区间之间存在部分重叠的情况下,则将初始数值区间和/或存在部分重叠的数据区间拆分成与任意已得的数值区间均不重叠的一个或多个数值区间;
111.具体地,在初始数值区间从属于数据区间的情况下,从数据区间中拆分出小于初始数值区间的子区间和/或大于初始数值区间的子区间;
112.在数据区间从属于初始数值区间的情况下,从初始数据区间中拆分出小于数值区间的子区间和/或大于数值区间的子区间;
113.在初始数值区间与数据区间之间存在交叉区间的情况下,从初始数值区间和数据区间中拆分出交叉区间、小于交叉区间的子区间以及大于交叉区间的子区间。
114.一般来说,数值区间与策略平衡树同步构建。
115.比如,如图9所示,针对初始数值区间1-0900~1-1200,其从属于已得到的数值区间1-0900~1-1800,则从已得到的数值区间1-0900~1-1800中拆分出子区间1-1201~1-1800,则该子区间作为数值区间。数值区间1-0900~1-1200、1-1201~1-1800均从属于初始
数值区间1-0000~1-2400,则拆分出数值区间1-0000~1-0899、1-0900~1-1200、1-1201~1-1800以及1-1801~1-2400,针对初始数值区间1-0000~1-0600从属于数值区间1-0000~1-0899,则拆分出数值区间1-0000~1-0600、1-0601~1-0899,针对初始数值区间1-1900~1-2400,其从属于1-1801~1-2400,则1-1801~1-2400拆分出子区间1-1801~1-1899以及1-1900~1-2400,针对初始数值区间1-0900~1-1200与已存在数值空间重合,则忽略。针对初始数值区间1-1600~1-1800,从属于数值区间1-1201~1-1800,则从1-1201~1-1800中拆分出子区间1-1201~1-1599以及1-1600~1-1800作为数值区间等。针对初始数值区间2-0900~2-1800,其与任意数值区间均不重叠,则其直接作为策略平衡树的一个数值区间。即后续的拆分是基于之前拆分的结果再次进行逐个拆分。
116.又比如,如图10所示,已得到的数值区间为32400~64800,针对初始数值区间118800~151200,由于其与32400~64800不重叠,则直接将118800~151200作为数值区间,针对初始数值区间0~86400,由于其与32400~64800重叠,则将0~86400拆分出数值区间0~32399、32400~64800以及64801~86400,针对初始数值区间68400~86400,由于其从属于数值区间64801~86400,则,将数值区间64801~86400拆分出64801~68399以及68400~86400。针对初始数值区间32400~43200,由于其从属于32400~64800,则拆分出的子区间32400~43200以及43201~64800为数值区间,针对57600~64800由于其从属于43201~64800,则拆分出的子区间43201~57599以及57600~64800为数值区间。
117.步骤s804:在对比的结果指示初始数值区间与任意已得的数值区间均不重叠的情况下,则将初始数值区间作为数值区间。
118.通过上述过程中构建出的数值区间可以涵盖访问策略所需的所有数值区间,以更便捷的查找访问策略。
119.另外,上述访问控制方法还可进一步包括:利用多个时间段的先后顺序,为多个节点构建双链表;相应地,根据双链表,执行为多个所述节点构建策略平衡树的步骤。通过双链表方式可以快速地查找到相邻的节点,以有效地提高构建策略平衡树的效率。
120.也就是说,在构建策略平衡树和双链表过程中,如果策略平衡树没有构建,则第一个数值区间作为策略平衡树的根节点,同时作为双链表的头节点。如果平衡树已经建立,则得到的数值区间与策略平衡树的各个节点的数值区间进行比较,是否有交叉,融合关系,包含等关系,如果有,对初始数值区间或者节点的数值区间进行拆分。如果策略平衡树上的节点因为拆分而不复存在,同时从策略平衡树和双链表中删除旧的节点。对拆分后产生的新节点逐个插入策略平衡树中,并插入有序双链表。如果初始数值区间与策略平衡树的各个节点的数值区间是全异关系,直接作为新的节点同时插入策略平衡树和双链表。
121.进一步地,如图6、图7、图9以及图10所示,上述为多个节点构建策略平衡树的具体实施方式可包括:为多个节点构建由父节点指向子节点的有向连接,其中,在子节点对应的最小值大于其父节点的最大值的情况下,父节点指向子节点的有向连接朝向第一侧,在子节点对应的最大值小于其父节点的最小值的情况下,父节点指向子节点的有向连接朝向第二侧。其中,第一侧可以为右侧,相应地,第二侧为左侧,以方便后续查找。
122.其中,对应于根节点的第一侧树深与第二侧树深之间的高度差不超过1。如果构建策略平衡树过程中第一侧树深与第二侧树深之间的高度差大于1,则可通过扭转策略平衡树的方式调整根节点的位置,以使第一侧树深和第二侧树深的高度差不超过1,从而能够比
较均衡的分配各个节点,降低树深度,使后续查找更均衡。
123.值得说明的是,上述图6、图7、图9以及图10仅是示例性地给出了几种构建策略平衡树的方式,任何其他得到策略平衡树,并通过策略平衡树查找策略的过程也均在本技术的保护范围内。
124.在本发明实施例中,如图11所示,上述访问控制方法还可进一步包括如下步骤:
125.步骤s1101:接收新增的策略配置信息;
126.步骤s1102:为新增的策略配置信息包括的时间段生成新的节点以及对应于新的节点的策略集合;
127.步骤s1103:将新的节点插入策略平衡树,并将策略配置信息包括的访问策略添加到对应于新的节点的策略集合中。
128.通过上述为策略平衡树插入新的节点,可以动态调整策略平衡树,增加新的访问策略,以更好地满足访问控制的需求。
129.在本发明实施例中,如图12所示,上述步骤s102的具体实施方式可包括如下步骤:
130.步骤s1201:在策略平衡树中查找访问时间所属的目标节点;
131.以图10所示的策略平衡树为例,查找访问时间周一下午4:30(对应的整数59400)的目标节点,仅需要从根节点跳转到57600~64800这一节点即可得到目标节点57600~64800。
132.步骤s1202:从目标节点对应的一个或多个访问策略中,查找与资源特征信息相匹配的目标访问策略。
133.通过策略平衡树可以快速地查找到所需的访问策略,从而有效地提高访问效率。
134.图13示出了本发明实施例提供的一种访问控制装置的结构示意图。如图13所示,该访问控制装置1300可包括:确定模块1301、查找模块1302以及控制模块1303,其中,
135.确定模块1301,用于确定终端发起的访问请求所对应的访问时间以及资源特征信息;
136.查找模块1302,用于基于预设的策略平衡树,查找与访问时间以及资源特征信息相匹配的访问策略,其中,策略平衡树是基于多个时间段抽象出的节点和多个时间段的先后顺序构建出的,每一个节点对应有一个或多个访问策略;
137.控制模块1303,用于在查找模块1302查找到相匹配的访问策略的情况下,根据查找到的访问策略控制访问请求。
138.在本发明实施例中,查找模块1302,进一步用于在策略平衡树中查找访问时间所属的目标节点;从目标节点对应的一个或多个访问策略中,查找与资源特征信息相匹配的目标访问策略。
139.在本发明实施例中,上述访问控制装置1300还包括:构建模块1304,其中,
140.构建模块1304,用于为多个时间段构建包含有数值区间的节点,并构建对应于节点的策略集合,其中,数值区间指示时间段或者时间段中的部分时间段,以使抽象出的所有节点之间为全异关系;利用多个时间段的先后顺序,为多个节点构建策略平衡树;根据多个时间段与多个访问策略之间的关联关系,将多个访问策略添加到对应的策略集合。
141.在本发明实施例中,构建模块1304,用于将多个时间段的起始时间和终止时间分别转换为整数;基于多个起始时间的整数和多个终止时间的整数,生成多个数值区间,其
中,多个数值区间之间互不重叠;针对每一个数据区间,构建包含数值区间的节点。
142.在本发明实施例中,构建模块1304,用于对多个起始时间的整数和多个终止时间的整数进行排序;利用排序后的每相邻两个整数构建出数据区间。
143.在本发明实施例中,构建模块1304,用于利用对应于每一个时间段的起始时间的整数和终止时间的整数构建初始数值区间;顺序针对每一个初始数值区间,执行下述操作:
144.将初始数值区间与已得到的数值区间进行对比;在对比的结果指示初始数值区间与至少一个数值区间之间存在部分重叠的情况下,则将初始数值区间和/或存在部分重叠的数据区间拆分成与任意已得的数值区间均不重叠的一个或多个数值区间;在对比的结果指示初始数值区间与任意已得的数值区间均不重叠的情况下,则将初始数值区间作为数值区间。
145.在本发明实施例中,构建模块1304,进一步用于利用多个时间段的先后顺序,为多个节点构建双链表;根据双链表,执行为多个节点构建策略平衡树的步骤。
146.在本发明实施例中,构建模块1304,进一步用于为多个节点构建由父节点指向子节点的有向连接,其中,在子节点对应的最小值大于其父节点的最大值的情况下,父节点指向子节点的有向连接朝向第一侧,在子节点对应的最大值小于其父节点的最小值的情况下,父节点指向子节点的有向连接朝向第二侧。其中,对应于根节点的第一侧树深与第二侧树深之间的高度差不超过1。
147.在本发明实施例中,构建模块1304,进一步用于接收新增的策略配置信息;为新增的策略配置信息包括的时间段生成新的节点以及对应于新的节点的策略集合;将新的节点插入策略平衡树,并将策略配置信息包括的访问策略添加到对应于新的节点的策略集合中。
148.在本发明实施例中,构建模块1304,进一步用于在初始数值区间从属于数据区间的情况下,从数据区间中拆分出小于初始数值区间的子区间和/或大于初始数值区间的子区间;在数据区间从属于初始数值区间的情况下,从初始数据区间中拆分出小于数值区间的子区间和/或大于所述数值区间的子区间;在初始数值区间与数据区间之间存在交叉区间的情况下,从初始数值区间和数据区间中拆分出交叉区间、小于交叉区间的子区间以及大于交叉区间的子区间。
149.图14示出了可以应用本发明实施例的访问控制方法或访问控制装置的示例性系统架构1400。
150.如图14所示,系统架构1400可以包括终端设备1401、1402、1403,网络1404和服务器1405。网络1404用以在终端设备1401、1402、1403和服务器1405之间提供通信链路的介质。网络1404可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
151.用户可以使用终端设备1401、1402、1403通过网络1404与服务器1405交互,以接收或发送消息等。终端设备1401、1402、1403上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
152.终端设备1401、1402、1403可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
153.服务器1405可以是提供各种服务的服务器,例如对用户利用终端设备1401、1402、
1403所访问的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的访问请求等数据进行分析等处理,并将处理结果(例如禁止访问、访问的网站页面
‑‑
仅为示例)反馈给终端设备。
154.需要说明的是,本发明实施例所提供的访问控制方法可以由服务器1405执行,相应地,访问控制装置可以设置于服务器1405中。
155.另外,上述仅是示例性地示出的上述访问控制装置或访问控制方法应用于服务器1405中的系统。上述访问控制装置或访问控制方法还可应用于服务器1405所连接的网关或者上述终端设备1401、1402、1403。
156.应该理解,图14中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
157.下面参考图15,其示出了适于用来实现本发明实施例的终端设备的计算机系统1500的结构示意图。图15示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
158.如图15所示,计算机系统1500包括中央处理单元(cpu)1501,其可以根据存储在只读存储器(rom)1502中的程序或者从存储部分1508加载到随机访问存储器(ram)1503中的程序而执行各种适当的动作和处理。在ram 1503中,还存储有系统1500操作所需的各种程序和数据。cpu 1501、rom 1502以及ram 1503通过总线1504彼此相连。输入/输出(i/o)接口1505也连接至总线1504。
159.以下部件连接至i/o接口1505:包括键盘、鼠标等的输入部分1506;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1507;包括硬盘等的存储部分1508;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1509。通信部分1509经由诸如因特网的网络执行通信处理。驱动器1510也根据需要连接至i/o接口1505。可拆卸介质1511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1510上,以便于从其上读出的计算机程序根据需要被安装入存储部分1508。
160.特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1509从网络上被下载和安装,和/或从可拆卸介质1511被安装。在该计算机程序被中央处理单元(cpu)1501执行时,执行本发明的系统中限定的上述功能。
161.需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,
其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。
162.附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
163.描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括确定模块、查找模块以及控制模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,确定模块还可以被描述为“确定终端发起的访问请求所对应的访问时间以及资源特征信息的模块”。
164.作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:确定终端发起的访问请求所对应的访问时间以及资源特征信息;基于预设的策略平衡树,查找与访问时间以及资源特征信息相匹配的访问策略,其中,策略平衡树是基于多个时间段抽象出的节点和多个时间段的先后顺序构建出的,每一个节点对应有一个或多个访问策略;在查找到的情况下,根据查找到的访问策略控制访问请求。
165.根据本发明实施例的技术方案,由于策略平衡树是基于多个时间段抽象出的节点和多个时间段的先后顺序构建出的,每一个节点对应有一个或多个访问策略,那么,通过策略平衡树可以快速地查找与访问请求的访问时间以及资源特征信息相匹配的访问策略,从而可以有效地提高访问效率。
166.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献