访问控制方法、装置及设备与流程

文档序号:29407585发布日期:2022-03-26 11:00阅读:191来源:国知局
访问控制方法、装置及设备与流程

1.本技术涉及信息安全技术领域,尤其涉及一种访问控制方法、装置及设备。


背景技术:

2.在用户通过终端设备访问业务系统(如,信息查询系统等)时,服务器需要对用户身份进行验证,以确定用户是否可以访问业务系统。
3.目前,在用户使用终端设备访问业务系统时,服务器需要获取访问业务系统所需的所有的应用程序接口(application programming interface,api),并通过每个api对应的验证单元对用户的身份进行验证,在所有api都验证成功时,用户可以访问业务系统。但是,在上述方法中,每个api都需要设置对应的验证单元,在api数量较多时,会导致用户权限验证的复杂度较高。


技术实现要素:

4.本技术提供一种访问控制方法、装置及设备,用于解决现有技术中用户权限验证的复杂度较高的技术问题。
5.第一方面,本技术提供一种访问控制方法,该方法包括:
6.获取业务处理请求,所述业务处理请求中包括第一业务的标识和用户信息;
7.确定所述第一业务对应的多个第一端口,并在所述多个第一端口中确定目标端口;
8.根据所述用户信息和所述目标端口,确定权限验证结果;
9.在所述权限验证结果为验证成功时,根据所述业务处理请求进行业务处理。
10.在一种可能的实施方式中,确定所述第一业务对应的多个第一端口,包括:
11.判断所述第一业务是否具有验证需求;
12.在确定所述第一业务具有验证需求时,确定所述第一业务对应的多个第一端口。
13.在一种可能的实施方式中,判断所述第一业务是否具有验证需求,包括:
14.获取所述第一业务对应的目标统一资源定位系统url;
15.根据所述url判断所述第一业务是否具有验证需求。
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.在一种可能的实施方式中,所述第一确定模块具体用于:
48.判断所述第一业务是否具有验证需求;
49.在确定所述第一业务具有验证需求时,确定所述第一业务对应的多个第一端口。
50.在一种可能的实施方式中,所述第一确定模块具体用于:
51.获取所述第一业务对应的目标统一资源定位系统url;
52.根据所述url判断所述第一业务是否具有验证需求。
53.在一种可能的实施方式中,所述第一确定模块具体用于:
54.在确定所述第一业务具有验证需求时,获取第一对应关系,所述第一对应关系中包括多个业务标识和每个业务标识对应的多个端口;
55.根据所述第一业务的标识和所述第一对应关系,确定所述第一业务对应的多个第一端口。
56.在一种可能的实施方式中,所述第一确定模块具体用于:
57.获取所述多个第一端口之间的调用顺序;
58.根据所述多个第一端口之间的调用顺序,在所述多个第一端口中确定所述目标端口。
59.在一种可能的实施方式中,所述第一确定模块具体用于:
60.根据所述多个第一端口之间的调用顺序,在所述多个第一端口中确定所述第一业务对应的根端口,所述根端口为所述第一业务所调用的首个端口;
61.将所述第一业务对应的根端口确定为所述目标端口。
62.在一种可能的实施方式中,所述第一确定模块具体用于:
63.确定所述目标端口对应的目标权限标识;
64.判断所述用户标识是否对应有所述目标权限标识;
65.若是,则确定所述权限验证结果为验证成功;
66.若否,则确定所述权限验证结果为验证失败。
67.在一种可能的实施方式中,所述访问控制装置还包括第二获取模块,所述第二获取模块用于:
68.获取所述第一业务对应的端口访问信息,所述端口访问信息中包括所述第一业务对应的所述多个第一端口和所述多个第一端口之间的调用顺序;
69.根据所述端口访问信息,配置所述多个第一端口的权限标识。
70.在一种可能的实施方式中,所述第二获取模块具体用于:
71.根据所述端口访问信息,在所述多个第一端口中确定所述第一业务对应的根端口,所述根端口为所述第一业务所调用的首个端口;
72.生成所述根端口对应的权限标识;
73.根据所述根端口对应的权限标识,设置所述多个第一端口中除根端口之外的其它端口的权限标识。
74.在一种可能的实施方式中,所述第二获取模块具体用于:
75.获取所述根端口对应的访问路径;
76.根据所述根端口对应的访问路径,生成所述根端口对应的权限标识。
77.在一种可能的实施方式中,所述第二获取模块具体用于:
78.将所述根端口对应的权限标识设置为述多个第一端口中除根端口之外的其它端口的权限标识。
79.第三方面,本公开实施例提供一种终端设备,包括:处理器和存储器;
80.所述存储器存储计算机执行指令;
81.所述处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的访问控制方法。
82.第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的访问控制方法。
83.第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的访问控制方法。
84.本技术提供一种访问控制方法、装置及设备,服务器获取业务访问请求,业务访问请求中包括第一业务的标识和用户信息,确定第一业务对应的多个第一端口,并在多个第一端口中确定目标端口,根据用户信息和目标端口,确定权限验证结果,在权限验证结果为验证成功时,根据业务处理请求进行业务处理。在上述方法中,在服务器获取业务访问请求时,由于服务器可以根据第一业务对应的多个第一端口中的其中一个端口,对用户信息进行权限验证,因此,在用户使用终端设备访问第一业务时,服务器只需进行一次权限验证,即可得到用户对应的权限验证结果,进而降低用户权限验证的复杂度。
附图说明
85.图1为本技术实施例提供的一种业务场景示意图;
86.图2为本技术实施例提供的一种访问控制方法的流程示意图;
87.图3为本技术实施例提供的一种资源访问树的结构示意图;
88.图4为本技术实施例提供的一种确定权限验证结果的过程示意图;
89.图5为本技术实施例提供的一种配置权限标识的方法流程示意图;
90.图6为本技术实施例提供的一种访问控制方法的过程示意图;
91.图7为本技术实施例提供的一种访问控制装置的结构示意图;
92.图8为本技术实施例提供的另一种访问控制装置的结构示意图;
93.图9为本技术提供的终端设备的硬件结构示意图。
具体实施方式
94.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
95.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有
的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
96.本技术的技术方案中,所涉及的金融数据或用户数据等信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
97.在相关技术中,在用户使用终端设备访问业务系统时,服务器需要对用户的身份进行验证,以确定用户是否可以访问业务系统。例如,在用户使用终端设备查询在银行的个人信息时,银行服务器需要验证用户是否可以查询对应的个人信息。目前,服务器需要获取访问业务系统所需的所有的api,并通过每个api对应的验证单元对用户的身份进行验证,在所有api都验证成功时,用户可以访问业务系统。例如,业务系统a对应的api为接口a和接口b,在用户使用终端设备访问业务系统a时,接口a和接口b对应的验证系统可以分别对用户的权限进行验证,在2个验证系统都验证成功时,用户可以访问业务系统。但是,每个api都需要设置对应的验证单元,在api数量较多时,会导致用户权限验证的复杂度较高。
98.为了解决相关技术中用户权限验证的复杂度较高的技术问题,本技术实施例提供一种访问控制方法,服务器获取包括第一业务的标识和用户信息的业务访问请求,服务器在确定第一业务具有验证需求时,确定第一业务对应的多个第一端口,以及获取多个第一端口之间的调用顺序,服务器根据调用顺序,在多个第一端口中确定目标端口,并根据用户信息和目标端口,确定权限验证结果,在权限验证结果为验证成功时,根据业务处理请求进行业务处理。这样,由于服务器可以根据第一业务对应的多个第一端口中的其中一个端口,对用户信息进行权限验证,因此,在用户使用终端设备访问第一业务时,服务器只需进行一次权限验证,即可得到用户对应的权限验证结果,进而降低用户权限验证的复杂度。
99.下面,结合图1,对本技术实施例的应用场景进行介绍。
100.图1为本技术实施例提供的一种业务场景示意图。请参见图1,包括终端设备和服务器。其中,服务器与终端设备通信连接。服务器可以与业务系统a和业务系统b连接。其中,业务系统a可以进行业务a的处理,业务系统b可以进行业务b的处理。业务系统a对应的调用接口包括接口a和接口b,业务系统b对应的调用接口包括接口c和接口d。
101.请参见图1,在终端设备向服务器发送业务b的处理请求时,服务器确定该处理请求需要在业务系统b中调用接口c和接口d,服务器通过处理请求中的用户信息和接口c,确定权限验证结果为验证成功,进而对业务b进行处理。这样,在终端设备向服务器发送业务b的处理请求时,若服务器对业务系统b的接口c的权限验证结果为验证成功,则服务器可以在业务系统b中对业务b进行处理,服务器不需要再对业务系统b中的接口d进行权限验证,因此,服务器只需进行一次权限验证,即可得到用户对应的权限验证结果,进而降低用户权限验证的复杂度。
102.下面以具体地实施例对本公开的技术方案以及本公开的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本公开的实施例进行描述。
103.图2为本技术实施例提供的一种访问控制方法的流程示意图。请参见图2,该方法可以包括:
104.s201、获取业务处理请求。
105.本技术实施例的执行主体可以为服务器,也可以为设置在服务器中的访问控制装
置,访问控制装置可以通过软件实现,也可以通过软件和硬件的结合实现。
106.可选的,业务处理请求可以为业务访问请求。例如,业务处理请求可以为访问页面的请求、访问应用程序的请求、访问数据库的请求等。业务处理请求中包括第一业务的标识和用户信息。可选的,第一业务的标识为待处理业务的标识。例如,若用户通过终端设备访问业务系统a,则第一业务的标识为业务系统a的标识,若用户通过终端设备访问业务系统b,则第一业务的标识为业务系统b的标识。例如,第一业务的标识可以为待访问系统的id、待访问系统的地址等信息。用户信息可以为用户的身份信息。例如,用户信息可以为用户的账号、用户的id等信息。
107.可选的,服务器可以接收终端设备发送的业务处理请求。例如,用户通过终端设备访问对应的页面或者应用程序时,终端设备向服务器发送业务处理请求,在业务处理请求处理完成时,终端设备可以访问对应的页面或者应用程序。例如,在用户点击终端设备的应用程序时,终端设备生成包括用户信息和应用程序标识的业务访问请求,服务器接收到业务访问请求之后,可以确定用户是否可以访问应用程序。
108.s202、确定第一业务对应的多个第一端口,并在多个第一端口中确定目标端口。
109.可选的,第一端口可以为第一业务对应的调用端口。例如,若第一业务为访问业务系统a,则第一端口可以为访问业务系统a所需调用的端口。例如,若用户通过终端设备查询银行的用户贷款信息,则服务器需要调用银行页面接口、用户分组接口、贷款页面接口、查询接口等,才能查询到用户的贷款信息。
110.可选的,可以根据如下可行的实现方式,确定第一业务对应的多个第一端口:判断第一业务是否具有验证需求。可选的,验证需求为服务器执行第一业务时的条件。例如,在终端设备访问业务系统a时,若业务系统a为隐私业务系统,则终端设备访问业务系统a需要具有验证需求,若业务系统a为任何一个用户都可以访问的业务系统,则终端设备访问业务系统a时无需进行权限验证,业务系统a不具有验证需求。
111.可选的,可以根据如下可行的实现方式,判断第一业务是否具有验证需求:获取第一业务对应的目标统一资源定位系统url。其中,url可以为第一业务对应的标识。例如,url可以为第一业务对应的地址。根据url判断第一业务是否具有验证需求。可选的,可以根据url,在预设数据库中确定第一业务是否具有验证需求。其中,预设数据库中包括多个业务对应的url,每个url指示的业务都为具有验证需求的标识。例如,预设数据库中包括业务标识a、业务标识b和业务标识c,若第一业务的标识为业务标识a,则确定第一业务具有验证需求,若第一业务标识为业务标识d,则确定第一业务部具有验证需求。
112.在确定第一业务具有验证需求时,确定第一业务对应的多个第一端口。例如,在服务器确定第一业务需要进行权限验证时,服务器确定第一业务对应的多个第一端口,在服务器确定第一业务不需要进行权限验证时,服务器无需确定第一业务对应的多个第一端口。
113.可选的,服务器可以根据如下可行的实现方式,确定第一业务对应的多个第一端口:在确定第一业务具有验证需求时,获取第一对应关系。其中,第一对应关系中包括多个业务标识和每个业务标识对应的多个端口。例如,第一对应关系可以如表1所示:
114.表1
[0115][0116]
需要说明的是,表1只是以示例的形式示意第一对应关系,并非对第一对应关系的限定。
[0117]
根据第一业务的标识和第一对应关系,确定第一业务对应的多个第一端口。例如,若第一业务的标识为业务标识1,则第一业务对应的第一端口包括端口1和端口2,若第一业务的标识为业务标识2,则第一业务对应的第一端口包括端口3和端口4。
[0118]
可选的,目标端口可以为待进行权限验证的端口。例如,在终端设备访问业务系统a时,服务器需要调用端口a和端口b,若服务器通过验证端口a的权限,确定权限验证结果,则目标端口为端口a,若服务器通过验证端口b的权限,确定权限验证结果,则目标端口为端口b。
[0119]
可选的,可以根据如下可行的实现方式,在多个第一端口中确定目标端口:获取多个第一端口之间的调用顺序。可选的,调用顺序为服务器调用多个第一端口的顺序。例如,在终端设备访问业务系统a时,服务器需要调用端口a、端口b和端口c,若服务器先调用端口a,再调用端口b,最后调用端口c,则业务系统a对应的多个第一端口之间的调用顺序为:端口a、端口b、端口c。
[0120]
可选的,在预先配置第一业务对应的多个第一端口时,服务器可以获取多个第一端口的调用顺序。例如,服务器可以通过对第一业务进行正向和反向的资源扫描,获取第一业务对应的多个第一端口的调用顺序。
[0121]
根据多个第一端口之间的调用顺序,在多个第一端口中确定目标端口。可选的,服务器根据多个第一端口之间的调用顺序,在多个第一端口中确定第一业务对应的根端口。其中,根端口为第一业务所调用的首个端口。例如,若服务器在执行第一业务时,先调用端口a,再调用端口b,则第一业务对应的多个第一端口中的根端口为端口a。
[0122]
将第一业务对应的根端口确定为目标端口。例如,若第一业务对应的根端口为端口a,则服务器将端口a确定为多个第一端口中的目标端口。可选的,服务器确定多个第一端口,以及多个第一端口的调用顺序之后,服务器可以构建第一业务对应的资源访问树,资源访问树包括第一业务对应的所有第一端口,以及多个第一端口之间的调用顺序,服务器通过资源访问树,可以确定目标端口。
[0123]
下面,结合图3,对资源访问树进行说明。
[0124]
图3为本技术实施例提供的一种资源访问树的结构示意图。请参见图3,包括第一业务的资源访问树。其中,第一业务的资源访问树包括外接端口、应用程序a端口、应用程序b端口、模块端口和列表端口。在资源访问树中,外接端口为第一业务对应的根端口,服务器对第一业务进行处理时,对多个第一端口的调用顺序为:外接端口、应用程序a端口、模块端
口、列表端口、应用程序b端口。可选的,服务器根据第一业务对应的资源访问树,可以准确的确定第一业务对应的多个第一端口,以及多个第一端口之间的调用关系。
[0125]
s203、根据用户信息和目标端口,确定权限验证结果。
[0126]
可选的,用户信息可以包括用户标识。例如,用户信息可以为用户的账号、用户的id、用户的指纹、用户的人脸等信息。可选的,可以根据如下可行的实现方式,确定权限验证结果:确定目标端口对应的目标权限标识。可选的,目标权限标识为预先对目标端口配置的权限标识。例如,服务器可以预先为目标端口配置对应的权限标识,进而通过权限标识对用户进行权限验证。
[0127]
判断用户标识是否对应有目标权限标识。例如,若用户标识对应的多个权限标识中存在与目标权限标识相同的标识,则确定用户标识对应有目标权限标识,若用户标识对应的多个权限标识中不存在与目标权限标识相同的标识,则确定用户标识没有对应的目标权限标识。
[0128]
可选的,在实际应用过程中,服务器会预先为每个用户配置多个权限标识,服务器可以根据用户标识,确定用户对应的多个权限标识,进而在多个权限标识中确定是否包括目标权限标识。可选的,可以根据用户标识与权限标识之间的第二对应关系,确定用户对应的多个权限标识。其中,第二对应关系可以包括多个用户标识,以及每个用户标识对应的至少一个权限标识。例如,用户标识与权限标识之间的第二对应关系可以如表2所示:
[0129]
表2
[0130][0131][0132]
需要说明的是,表2只是以示例的形式示意第二对应关系,并非对第二对应关系的限定。
[0133]
根据用户标识和第二对应关系,确定用户标识对应的多个权限标识。例如,若用户标识为用户标识1,则用户标识对应的权限标识包括权限标识1、权限标识2和权限标识3;若用户标识为用户标识2,则用户标识对应的权限标识包括权限标识4和权限标识5;若用户标识为用户标识3,则用户标识对应的权限标识包括权限标识6。
[0134]
可选的,服务器判断用户标识是否对应有目标权限标识,若是,则确定权限验证结果为验证成功,若否则确定权限验证结果为验证失败。例如,目标权限标识为权限标识1,若服务器根据用户标识确定用户标识对应的权限标识包括:权限标识1、权限标识2和权限标识3,则服务器确定用户标识对应的权限标识中包括目标权限标识,服务器确定全下验证结果为验证成功,若服务器根据用户标识确定用户标识对应的权限标识包括:权限标识2、权限标识3和权限标识4,则服务器确定用户标识对应的权限标识中不包括目标权限标识,服务器确定权限验证结果为验证失败。
[0135]
下面,结合图4,对确定权限验证结果的过程进行说明。
[0136]
图4为本技术实施例提供的一种确定权限验证结果的过程示意图。请参见图4,包括:第一业务的资源访问树。其中,第一业务的资源访问树中包括外接端口、应用程序端口、模块端口和列表端口。在第一业务的资源访问树中,根端口为外接端口。服务器确定外接端口对应的权限标识为权限标识a。
[0137]
请参见图4,服务器可以确定用户标识对应的权限标识。其中,用户标识对应的权限标识包括权限标识a、权限标识b和权限标识c。由于用户标识对应的权限标识包括权限标识a,因此,服务器对第一业务的权限验证结果为验证通过。
[0138]
s204、在权限验证结果为验证成功时,根据业务处理请求进行业务处理。
[0139]
可选的,在权限验证结果为验证成功时,服务器可以向终端设备发送第一业务对应的业务信息,以使终端设备访问第一业务对应的业务信息。例如,用户通过终端设备访问银行应用的个人征信信息,若服务器对用户的权限验证结果为验证成功,则终端设备可以访问银行应用的个人征信信息,若服务器对用户的权限验证结果为验证失败,则终端设备无法访问银行应用的个人征信信息。
[0140]
本技术实施例提供一种访问控制方法,服务器获取包括第一业务标识和用户信息的业务处理请求,在确定第一业务具有验证需求时,获取业务标识和端口之间的第一对应关系,并根据第一业务的标识和第一对应关系,确定第一业务对应的多个第一端口,服务器根据多个第一端口的调用顺序,在第一端口中确定目标端口,并根据用户信息和目标端口,确定权限验证结果,在权限验证结果为验证成功时,根据业务处理请求进行业务处理。在上述方法中,根据第一对应关系,可以准确的确定第一业务对应的多个第一端口和调用顺序,进而可以准确的确定目标端口,通过用户信息和目标端口,对用户访问第一业务的权限进行权限验证时,服务器只需进行一次权限验证,即可得到用户对应的权限验证结果,进而降低用户权限验证的复杂度。
[0141]
在图2所示的实施例的基础上,本技术实施例中的访问控制方法还包括配置多个第一端口的权限标识的过程,下面,结合图5,对配置多个第一端口的权限标识的过程进行说明。
[0142]
图5为本技术实施例提供的一种配置权限标识的方法流程示意图。请参见图5,该方法流程包括:
[0143]
s501、获取第一业务对应的端口访问信息。
[0144]
可选的,端口访问信息中包括第一业务对应的多个第一端口和多个第一端口之间的调用顺序。可选的,第一端口可以为第一业务对应的调用api。
[0145]
可选的,服务器中可以包括资源收集装置,其中,资源收集装置用于收集服务器中的每个业务、以及每个业务对应的多个第一端口。例如,服务器中的资源收集装置可以收集所有业务系统对外提供的全部资源服务(所有的api接口)。例如,在实际应用过程中,服务器控制业务系统启动之后,可以扫描获取全部的url路径,并注册api完成url路径的存储,进而可以获取业务系统对应的多个第一端口。
[0146]
在进行业务处理请求时,同一个业务系统可能会承担多个业务,每个业务调用的api可能并不相同,因此,服务器还需要为多个第一端口确定对应的业务。例如,业务系统可以支持业务a和业务b,业务系统中包括端口a、端口b和端口c,其中,在进行业务a时需要调
用端口a和端口b,在进行业务b时需要调用端口b和端口c,因此,业务a对应的第一端口为端口a和端口b,业务b对应的第一端口为端口b和端口c。
[0147]
可选的,服务器中可以包括链路监控装置,服务器通过链路监控装置,可以获取一次业务执行时所调用的所有端口,以及端口的调用顺序。例如,用户使用终端设备访问页面a时,终端设备会触发访问页面a的网络请求,链路监控装置可以记录初始链路的id(即调用的第一个端口),链路监控装置可以获取微服务(访问页面a)发起的外部请求接口(调用的第二个端口),若微服务继续发起外部请求接口,链路监控装置可以继续获取外部请求接口,直至页面a打开时,链路监控装置可以获取页面a打开过程中服务器调用的所有端口,以及所有端口的调用顺序,这样,服务器可以得到访问页面a的业务对应的多个第一端口,以及多个第一端口之间的调用顺序。
[0148]
服务器通过资源收集装置获取所有的业务系统提供的端口,并根据链路监控装置,获取每个业务对应的端口,以及端口之间的调用顺序,进而可以得到第一端口对应的端口访问信息。
[0149]
s502、根据端口访问信息,配置多个第一端口的权限标识。
[0150]
可选的,权限标识用于对端口进行验证。例如,权限标识可以为端口的密码,若访问请求中包括该端口的权限标识,则端口对访问请求的权限验证通过,若访问请求中不包括该端口的权限标识,则端口对访问请求的权限验证不通过。
[0151]
可选的,可以根据如下可行的实现方式,配置多个第一端口的权限标识:根据端口访问信息,在多个第一端口中确定第一业务对应的根端口,其中,根端口为第一业务所调用的首个端口。例如,业务a对应的第一端口包括端口a、端口b和端口c,若服务器进行业务a的处理时,调用的第一个端口为端口a,则服务器将端口a确定为业务a对应的根端口。
[0152]
生成根端口对应的权限标识。可选的,可以根据如下可行的实现方式生成根端口对应的权限标识:获取根端口对应的访问路径,根据根端口对应的访问路径,生成根端口对应的权限标识。例如,根端口的权限标识可以为根端口的url地址,根端口的权限标识也可以为其它格式的标识(如,rest api),本技术实施例对此不作限定。
[0153]
根据根端口对应的权限标识,设置多个第一端口中除根端口之外的其它端口的权限标识。可选的,服务器可以将根端口对应的权限标识,设置为多个第一端口中除根端口之外的其它端口的权限标识。例如,第一业务对应的第一端口包括端口a、端口b和端口c,其中,端口a为第一业务对应的根端口,若服务器生成的端口a的权限标识为标识a,则服务器将端口b和端口c的权限标识都设置为标识a,若服务器生成的端口a的权限标识为标识b,则服务器将端口b和端口c的权限标识都设置为标识b。这样可以解决上下游资源权限不匹配的问题。
[0154]
可选的,根据根端口对应的权限标识,设置多个第一端口中除根端口之外的其它端口的权限标识之后,服务器还可以建立多个第一端口之间的上下级关系。例如,若多个第一端口中包括删除功能的端口、添加功能的端口或修改功能的端口,服务器在为三种端口配置完权限标识之后,为了区分与根节点的上下级关系,可以为三种端口配置对应的标识(如删除标识、添加标识或修改标识),这样,若用户权限包括三种端口的权限(如,用户权限包括删除标识、添加标识或修改标识),则默认用户权限也包括根节点的权限。
[0155]
本技术实施例提供一种配置权限标识的方法,服务器可以获取第一业务对应的端
口访问信息,其中,端口访问信息中包括第一业务对应的多个第一端口和多个第一端口之间的调用顺序,根据端口访问信息,在多个第一端口中确定第一业务对应的根端口,服务器生成根端口对应的权限标识,并将根端口对应的权限标识,设置为多个第一端口中除根端口之外的其它端口的权限标识。这样,服务器可以将每个业务对应的所有的第一端口的权限标识,都设置为根端口的权限标识,在进行业务处理时,服务器只需要对根端口对应的权限进行验证即可,而无需对其它端口的权限进行验证,不仅可以降低添加权限标识的复杂度,还可以降低用户权限验证的复杂度。
[0156]
在上述任意一个实施例的基础上,下面,结合图6,对上述访问控制方法的过程进行说明。
[0157]
图6为本技术实施例提供的一种访问控制方法的过程示意图。请参见图6,包括终端设备和服务器。终端设备向服务器发送业务处理请求,其中,业务处理请求中包括第一业务的标识和用户标识。服务器根据第一业务标识,确定第一业务标识对应的第一端口包括端口a、端口b和端口c。其中,服务器在处理第一业务时,服务器先调用端口a,再调用端口b,最后调用端口c。
[0158]
请参见图6,服务器将端口a确定为第一业务对应的根端口,并获取端口a的目标权限标识为权限标识a。服务器根据用户标识,获取用户标识对应的权限标识,其中,用户标识对应的权限标识包括权限标识a和权限标识b,由于用户标识对应的权限标识包括权限标识a,因此,第一业务的权限验证结果为验证通过,服务器可以对第一业务进行处理。这样,服务器只需进行一次权限验证,即可得到用户对应的权限验证结果,不仅可以降低添加权限标识的复杂度,还可以降低用户权限验证的复杂度。
[0159]
图7为本技术实施例提供的一种访问控制装置的结构示意图。请参见图7,该访问控制装置10包括第一获取模块11、第一确定模块12、第二确定模块13和处理模块14,其中:
[0160]
所述第一获取模块11用于,获取业务处理请求,所述业务处理请求中包括第一业务的标识和用户信息;
[0161]
所述第一确定模块12用于,确定所述第一业务对应的多个第一端口,并在所述多个第一端口中确定目标端口;
[0162]
所述第二确定模块13用于,根据所述用户信息和所述目标端口,确定权限验证结果;
[0163]
所述处理模块14用于,在所述权限验证结果为验证成功时,根据所述业务处理请求进行业务处理。
[0164]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0165]
判断所述第一业务是否具有验证需求;
[0166]
在确定所述第一业务具有验证需求时,确定所述第一业务对应的多个第一端口。
[0167]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0168]
获取所述第一业务对应的目标统一资源定位系统url;
[0169]
根据所述url判断所述第一业务是否具有验证需求。
[0170]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0171]
在确定所述第一业务具有验证需求时,获取第一对应关系,所述第一对应关系中包括多个业务标识和每个业务标识对应的多个端口;
[0172]
根据所述第一业务的标识和所述第一对应关系,确定所述第一业务对应的多个第一端口。
[0173]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0174]
获取所述多个第一端口之间的调用顺序;
[0175]
根据所述多个第一端口之间的调用顺序,在所述多个第一端口中确定所述目标端口。
[0176]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0177]
根据所述多个第一端口之间的调用顺序,在所述多个第一端口中确定所述第一业务对应的根端口,所述根端口为所述第一业务所调用的首个端口;
[0178]
将所述第一业务对应的根端口确定为所述目标端口。
[0179]
在一种可能的实施方式中,所述第一确定模块12具体用于:
[0180]
确定所述目标端口对应的目标权限标识;
[0181]
判断所述用户标识是否对应有所述目标权限标识;
[0182]
若是,则确定所述权限验证结果为验证成功;
[0183]
若否,则确定所述权限验证结果为验证失败。
[0184]
本实施例提供的访问控制装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
[0185]
图8为本技术实施例提供的另一种访问控制装置的结构示意图。在图7所示的实施例的基础上,请参见图8,该访问控制装置10还包括第二获取模块15,所述第二获取模块15用于:
[0186]
获取所述第一业务对应的端口访问信息,所述端口访问信息中包括所述第一业务对应的所述多个第一端口和所述多个第一端口之间的调用顺序;
[0187]
根据所述端口访问信息,配置所述多个第一端口的权限标识。
[0188]
在一种可能的实施方式中,所述第二获取模块15具体用于:
[0189]
根据所述端口访问信息,在所述多个第一端口中确定所述第一业务对应的根端口,所述根端口为所述第一业务所调用的首个端口;
[0190]
生成所述根端口对应的权限标识;
[0191]
根据所述根端口对应的权限标识,设置所述多个第一端口中除根端口之外的其它端口的权限标识。
[0192]
在一种可能的实施方式中,所述第二获取模块15具体用于:
[0193]
获取所述根端口对应的访问路径;
[0194]
根据所述根端口对应的访问路径,生成所述根端口对应的权限标识。
[0195]
在一种可能的实施方式中,所述第二获取模块15具体用于:
[0196]
将所述根端口对应的权限标识设置为述多个第一端口中除根端口之外的其它端口的权限标识。
[0197]
本实施例提供的访问控制装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
[0198]
图9为本技术提供的终端设备的硬件结构示意图。请参见图9,该终端设备20可以包括:处理器21和存储器22,其中,处理器21和存储器22可以通信;示例性的,处理器21和存
储器22通过通信总线23通信,所述存储器22用于存储程序指令,所述处理器21用于调用存储器中的程序指令执行上述任意方法实施例所示的访问控制方法。
[0199]
可选的,终端设备20还可以包括通信接口,通信接口可以包括发送器和/或接收器。
[0200]
可选的,上述处理器可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0201]
本技术提供一种可读存储介质,所述可读存储介质上存储有计算机程序;所述计算机程序用于实现如上述任意实施例所述的访问控制方法。
[0202]
本技术实施例提供一种计算机程序产品,所述计算机程序产品包括指令,当所述指令被执行时,使得计算机执行上述访问控制方法。
[0203]
实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(英文:read-only memory,缩写:rom)、ram、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。
[0204]
本技术实施例是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程终端设备的处理单元以产生一个机器,使得通过计算机或其他可编程终端设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0205]
这些计算机程序指令也可存储在能引导计算机或其他可编程终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0206]
这些计算机程序指令也可装载到计算机或其他可编程终端设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0207]
显然,本领域的技术人员可以对本技术实施例进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术实施例的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
[0208]
在本技术中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本技术中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本技术中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关
联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1