CN112131021A - 一种访问请求处理方法及装置 - Google Patents
一种访问请求处理方法及装置 Download PDFInfo
- Publication number
- CN112131021A CN112131021A CN202011000156.1A CN202011000156A CN112131021A CN 112131021 A CN112131021 A CN 112131021A CN 202011000156 A CN202011000156 A CN 202011000156A CN 112131021 A CN112131021 A CN 112131021A
- Authority
- CN
- China
- Prior art keywords
- access request
- request
- access
- client
- server
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 44
- 238000012545 processing Methods 0.000 claims description 32
- 230000015654 memory Effects 0.000 claims description 19
- 238000013475 authorization Methods 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 11
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000011161 development Methods 0.000 abstract description 11
- 230000006978 adaptation Effects 0.000 abstract description 6
- 230000004069 differentiation Effects 0.000 abstract description 6
- 230000006870 function Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/541—Client-server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Abstract
本申请提供了一种访问请求处理方法及装置,所述方法包括:接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;根据所述第一目标参数访问所述第一服务器。通过将访问请求中的请求参数转换为目标参数,进行接口适配,能够解决不同访问请求的差异化问题,降低开发成本,提高访问请求的效率。
Description
技术领域
本申请涉及计算机领域,特别是一种访问请求处理方法及装置。
背景技术
计算机、手机等客户端与服务器通信可实现多种功能,各种功能通过程序代码调用多个应用程序接口(Application Programming Interface,API)实现。而客户端需要通过API来获取数据,例如,车载终端通过API请求车况、环保驾驶等数据,移动终端可以通过API发送远程控制、请求车况、车辆行程、车辆轨迹、环保驾驶、试乘试驾等数据。上述API有两个不同的数据提供方,不同的数据提供方输出的数据都会有不同程度的差异,而且不同的项目针对提供方可能会有不同的数据格式要求。对于API的提供方来说,面对的是大量的差异化的需求,针对不同的项目、客户端、第三方数据供应商都去开发相应的接口,会造成API的越来越多。并且这些差异化接口的开发、测试、部署、运维阶段都需要花费大量的人力与时间,增加了开发成本。
发明内容
为解决上述问题,本申请公开了一种访问请求处理方法及装置,能够解决不同访问请求之间的差异性问题。
第一方面,本申请实施例提供了一种访问请求处理方法,所述方法包括:
接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;
确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;
根据所述第一目标参数访问所述第一服务器。
第二方面,本申请实施例提供了一种访问请求处理装置,所述装置包括:
接收单元,用于接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;
转换单元,用于确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;
访问单元,用于根据所述第一目标参数访问所述第一服务器。
第三方面,本申请实施例提供了一种访问请求处理装置,包括处理器、存储器、通信接口以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置由上述处理器执行,上述程序包括用于执行本申请实施例第一方面中的任一方法中的步骤的指令。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行本申请实施例第一方面所描述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,所述述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面所述的方法中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
本申请提供的技术方案,接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;根据所述第一目标参数访问所述第一服务器。通过将访问请求中的请求参数转换为目标参数,进行接口适配,能够解决不同访问请求的差异化问题,降低开发成本,提高访问请求的效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的一种系统构架的示意图;
图1b为本申请实施例提供的另一种系统构架的示意图;
图2为本申请实施例提供的一种访问请求处理方法的流程示意图;
图3a为本申请实施例提供的一种访问请求处理装置的功能单元组成框图;
图3b为本申请实施例提供的另一种访问请求处理装置的功能单元组成框图;
图4为本申请实施例提供的一种访问请求处理装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
为了更好地理解本申请实施例的方案,下面先对本申请实施例可能涉及的相关术语和概念进行介绍。
JWT:JWT全称Json Web Token,即跨域认证规范,是一种用于通信双方之间传递安全信息的简洁的、URL安全的表述性声明规范,经常用于跨域身份验证。
API:随着通信技术的发展,各类应用软件的应用功能越来越多,如安装在手机或电脑上的微信、微博等社交软件,其支持的功能越来越强大。各个功能通过程序代码实现,为了方便程序的维护,代码中设置有API,API其实质是一些预先定义的函数,用于给应用程序或者程序开发人员访问设置此API的程序,使得应用程序或程序开发人员无需访问程序的源代码,或理解其内部工作机制即可实现或了解代码的功能。
OAUTH协议:当前API使用OAUTH协议进行面向用户的授权认证。OAUTH是一种开放的、安全的协议,为桌面程序或基于B/S(Browser/Server)的web应用提供了一种简单标准的方式去访问需要用户授权的API服务,避免了API的非授权伪造请求以及防止API的重放攻击,并且OAUTH的授权不会是第三方触及到用户的账号信息(例如,用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得用户资源的授权,同时,任何第三方都可以使用OAUTH申请服务授权,任何服务提供者都可以实现自身服务的OAUTH授权。
目前,针对不同服务器,客户端可以通过不同API来请求或提供数据,例如,车载终端通过API请求车况、环保驾驶等数据,手机可以通过API发送远程控制、请求车况、车辆行程、车辆轨迹、环保驾驶、试乘试驾等数据。上述两个不同的数据提供方输出的数据都会有不同程度的差异,而且不同的项目针对提供方可能会有不同的数据格式要求。对于API的提供方来说,面对大量的差异化需求,针对不同的项目、客户端、第三方数据供应商都去开发相应的接口,会造成API的越来越多。并且这些差异化接口的开发、测试、部署、运维阶段都需要花费大量的人力与时间,增加了开发成本。
针对上述问题,本申请实施例提供了一种访问请求处理方法,通过将访问请求中的请求参数转换为目标参数,进行接口适配,能够解决不同访问请求的差异化问题,降低开发成本,提高访问请求的效率。
请参阅图1a,图1a是本申请实施例提供的一种系统架构的示意图。如图1a所示,所述系统架构包括客户端10和服务器20,所述客户端10通过有线网络或无线网络与服务器20进行信息交互,客户端10可以包括手机11、PC机12、一体机13等类型,服务器20可以包括云服务器21、边缘服务器22、API 23。其中,云服务器21、边缘服务器22、API 23在图1a中只是示例一个服务器表述,在实际应用中,云服务器21、边缘服务器22、API 23可以是多个服务器及其配套装置构成的集群系统。采用本申请实施例,任一客户端10通过有线网络或无线网络向服务器20发送多个访问请求,每个访问请求携带请求参数,接收多个访问请问的API24确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,以适应边缘服务器的数据格式,根据所述第一目标参数访问边缘服务器22。
上述图1a的例子只是实现本申请实施例的一种系统架构实例,本发明实施例并不限于上述图1a所述的系统结构,基于图1a所述的系统架构,提出本发明方法各个实施例。
请参阅图1b,图1b是本申请实施例提供的一种系统架构的示意图。如图1b所示,所述系统架构包括客户端10、服务器20、API 30和网关40。客户端10发送访问请求来请求访问服务器,网关40验证客户端10的签名,API对访问请求进行鉴权和API适配。
本申请实施例涉及的客户端可以以各种形式来实施。例如,本申请实施例中描述的客户端可以为移动终端,该移动终端可以包括诸如移动电话、智能电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,PDA)、平板电脑(PAD)、便携式多媒体播放器(Portable Media Player,PMP)、导航装置等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。下面,假设客户端是移动终端。然而,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
下面结合附图对本申请实施例的实施方式进行详细说明。
请参阅图2,图2为本申请实施例提供的一种访问请求处理方法的流程示意图,应用于如图1a或如图1b所示的系统架构。如图2所示,所述方法包括如下步骤。
S210、接收客户端发送的多个访问请求,每个访问请求携带请求参数。
这里,客户端在实际应用中可以是手机、平板、电脑、车载终端、可穿戴设备以及管理平台,该客户端可以在同一时间发送多个访问请求来获取业务数据。
S220、确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器。
其中,所述第一目标参数的格式为YML。YML文件格式是YAML(YAML Aint MarkupLanguage)编写的文件格式,YAML是一种简洁的非标记语言。请问请求中的请求参数的格式可以为JSON数据格式、XML文件格式、properties文件格式等,为了实现API适配需求,可以将请求参数的格式均转化成YML文件格式,使得请求参数直观的能够被处理器识别的的数据序列化格式,并且容易阅读、容易与脚本语言交互,可以被支持YAML库中的不同编程语言程序的导入。YML文件是以数据为核心的,比传统的格式更加简洁。
可选的,所述第一访问请求包括jwt;所述确定所述客户端是否被授权,包括:确定所述jwt中的权限信息是否与所述第一API相匹配。
在实际应用中,后台服务器接收到客户端发送的多个访问请求时,首先需要验证该客户端是否得到授权,若该客户端是首次访问后台服务器,API需要检验jwt的签名是否合法,如果合法则建立会话(session);若该客户端是非首次访问后台服务器,则在会话有效期间内可以不用验证jwt的签名,只验证jwt中的权限信息是否与该后台服务器的API相匹配。
进一步地,jwt中的权限信息是否与该后台服务器的API相匹配的过程可以编译打包成通用的权限校验功能包放到标准库中,各服务器均可以引用,从而使得服务器就可以专注于自身业务逻辑处理。
随着服务器数量的增多,API的数量也增多,其权限列表越大,不适合使用全限定名。因此,在本申请实施例中,可以将所有服务器和API进行数字编号,将编号验证逻辑以注解的方式写到API代码上,从而可以尽量减少代码开发的工作量。
在一种可能的实施例中接收客户端发送的多个访问请求之前,所述方法还包括:根据所述客户端发送的授权请求生成所述权限信息,所述权限信息包括用户信息、设备信息、多租户信息、调用服务上下文、调用权限中的至少一种。
其中,客户端在发送访问请求之前,需要获取到后台服务器的授权。后台服务器可以在接收到客户端发送的授权请求后,生成jwt,并将用户信息、设备信息、多租户信息、调用服务上下文、调用权限中的至少一种权限信息写入jwt(jsonweb token)并签名,将jwt发送给客户端。客户端可以在访问请求中携带jwt,当API验证jwt中的权限信息与API相匹配时,则客户端可以访问后台服务器。
进一步地,后台服务器发送的jwt可以在API、前台应用、后台服务器中始终传递。jwt中的用户信息可以包括用户id和用户类型,设备信息可以包括设备id和设备类型。在实际应用中,jwt中的用户id、用户类型、设备id、设备类型、多租户信息、调用服务上下文可以使鉴权策略适用更多场景,既可以对服务、对接口、对输入参数进行校验,也可以对输出参数进行校验。在通用的权限校验功能包中固化一些鉴权策略,如限制请求次数、限流等,并在配置文件中配置在哪种场景下对应使用哪种鉴权策略,进一步解耦,提升代码重用的能力。
目前,jwt在后台服务器被设置成失效后,正在使用中的jwt不会立即停用,需要等到用户下次登录才会生效。因此,在本申请实施例中,当jwt在被设置成失效后,后台服务器向所有jwt经过的API发送消息,将相关的session清空,已经发放的jwt将重新验证有效期及签名,使得携带失效的访问请求不得通过API。
可选的,所述访问请求可以在https协议中传递以保护jwt中的内容不被嗅探,或者在jwt中存在敏感信息时可以将jwt进行加密。
其中,后台服务器可以使用客户端携带在授权请求中的加密算法对jwt进行加密,也可以使用预先设定的加密算法对jwt进行加密,本申请实施例对此不做限定。在一些实施例中,加密算法可以为哈希加密、RSA算法、DES算法中的任一种。在另一个实施例中,服务器接收来自客户端的加密摘要信息,加密摘要信息为将时间戳信息与用户登录信息中的至少一种,后台服务器将加密摘要信息作为jwt的签名,将jwt发送给客户端,以便客户端在对jwt令牌的签名验证通过的情况下,根据jwt令牌的签名与后台服务器交互。服务器通过以具有实际意义的加密摘要信息作为jwt的签名,可以提高签名破译的难度。
进一步地,客户端在获取后台服务器的授权时,可以使用OAuth协议中的授权模式以更好地保护权限信息不被第三方获取到,例如,授权码(authorization code)模式、简化(implicit)模式。在客户端为第三方应用时,则可以采用客户端(client credentials)模式。
S230、根据所述第一目标参数访问第一服务器,所述第一服务器为所述第一访问请求对应的服务器。
其中,在验证客户端得到授权后,API可以根据转换后的第一目标参数,访问第一访问请求对应的服务器,即访问第一服务器,从第一服务器中获取请求结果数据。
在一种可能的实施例中,所述第一访问请求与第二访问请求存在数据依赖关系,所述第二访问请求为所述多个访问请求中除了所述第一访问请求的任一访问请求;
所述方法还包括:获取所述第一访问请求的请求结果,根据所述第一访问请求的请求结果更新所述第二访问请求中的请求参数。
其中,当第一访问请求与第二访问请求存在数据依赖关系,例如,第二访问请求需要第一访问请求的请求结果中的一个数据作为请求参数中的一个参数,可以按照访问顺序串行访问对应的服务器,即先根据第一访问请求访问第一服务器,获得第一访问请求的请求结果,从第一访问请求的请求结果中提取出有依赖关系的数据作为第二访问请求中的请求参数中一个数据,并更新第二访问请求中的请求参数,再将第二访问请求中的请求参数转化为YML格式来访问第二访问请求对应的服务器。
在一种可能的实施例中,所述第一访问请求与第二访问请求不存在数据依赖关系;
所述方法还包括:分别获取所述第一访问请求和所述第二访问请求的请求结果,根据第二配置规则将所述第一访问请求的请求结果与所述第二访问请求的请求结果进行合并,得到第一结果。
其中,在第一访问请求与第二访问请求不存在数据依赖关系时,第一访问请求和第二访问请求可以并行访问对应的服务器,然后分别得到第一访问请求和所述第二访问请求的请求结果,按结构合并第一访问请求和第二访问请求的请求结果,得到第一结果,最后将第一结果返回客户端。
进一步地,按结构合并请求结果可以是根据多个请求结果的数据结构进行合并,即将请求结果中具有相同数据类型的数据进行合并,例如,第一访问请求的请求结果中有的数据类型为整数型、有的数据类型为字符型,第二访问请求的请求结果的数据类型均为整数型,则可以将第一访问请求的请求结果和第二访问请求的请求结果中的数据类型为整数型的数据进行合并。
在一种可能的实施例中,API在得到请求结果后,还可以将请求结果的格式进行转换,例如,可以将请求结果的格式均转换为YML文件格式,或者JSON格式,以使实现API适配需求。
可选的,所述方法还包括:对所述第一访问请求的请求结果或得到第一结果进行定制化处理。
具体地,API在得到服务器返回的请求结果后,可以在将请求结果合并之前先对请求结果进行定制化处理,从而能够满足客户端的阅读需求,例如,转换请求结果中某一字段的数据类型、对GPS地址查询逆地理编码加入合并的数据中,最终形成配置中定义的统一格式传递到客户端。API在得到服务器返回的请求结果后,也可以先根据第二配置规则将请求结果合并在对合并后的第一结果进行定制化处理,从而可以对多个请求结果同时进行处理,节省时间。
可以看出,本申请提出了一种访问请求处理方法,接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;根据所述第一目标参数访问所述第一服务器。通过将访问请求中的请求参数转换为目标参数,进行接口适配,能够解决不同访问请求的差异化问题,降低开发成本,提高访问请求的效率
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
请参阅图3a,图3a是本申请实施例提供的一种访问请求处理装置300的功能单元组成框图,所述访问请求处理装置300包括:接收单元310、转换单元320和访问单元330,其中,
接收单元310,用于接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;
转换单元320,用于确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;
访问单元330,用于根据所述第一目标参数访问所述第一服务器。
在本申请一可能的实施例中,所述第一目标参数的格式为YML。
在本申请一可能的实施例中,所述第一访问请求与第二访问请求存在数据依赖关系,所述第二访问请求为所述多个访问请求中除了所述第一访问请求的任一访问请求;
如图3b所示,所述访问请求处理装置300还包括获取单元340和更新单元350,其中,
所述获取单元340,用于获取所述第一访问请求的请求结果;
所述更新单元350,用于根据所述第一访问请求的请求结果更新所述第二访问请求的请求参数。
在本申请一可能的实施例中,所述第一访问请求与第二访问请求不存在数据依赖关系;
如图3b所示,所述访问请求处理装置300还包括合并单元360,其中,
所述获取单元340,还用于分别获取所述第一访问请求和所述第二访问请求的请求结果;
所述合并单元360,用于根据第二配置规则将所述第一访问请求的请求结果与所述第二访问请求的请求结果进行合并,得到第一结果。
在本申请一可能的实施例中,如图3b所示,所述访问请求处理装置300还可以包括处理单元370,所述处理单元370用于:对所述第一访问请求的请求结果或第一结果进行定制化处理。
在本申请一可能的实施例中,在所述第一访问请求包括jwt方面,所述转换单元320具体用于:确定所述jwt中的权限信息是否与所述第一服务器的API相匹配。
在本申请一可能的实施例中,如图3b所示,所述访问请求处理装置300还可以包括生成单元380,所述生成单元380用于:根据所述客户端发送的授权请求生成所述权限信息,所述权限信息包括用户信息、设备信息、多租户信息、调用服务上下文、调用权限中的至少一种。
可以理解的是,本申请实施例的访问请求处理装置的各程序模块的功能可根据上述方法实施例中的方法具体实现,其具体实现过程可以参照上述方法实施例的相关描述,此处不再赘述。
请参阅图4,图4是本申请实施例提供的一种访问请求处理装置,该服务器访问请求处理装置包括:一个或多个处理器、一个或多个存储器、一个或多个通信接口,以及一个或多个程序;
所述一个或多个程序被存储在所述存储器中,并且被配置由所述一个或多个处理器执行;
所述程序包括用于执行以下步骤的指令:
接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;
确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;
根据所述第一目标参数访问所述第一服务器。
其中,处理器是访问请求处理装置的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器是一个中央处理器(central processing unit,CPU),也可以是特定集成电路(application specific integrated circuit,ASIC),或者是被配置成实施本申请实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signalprocessor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)。
进一步地,处理器可以通过运行或执行存储在存储器内的软件程序,以及调用存储在存储器内的数据,执行服务器的各种功能。
存储器可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc readonly memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信总线与处理器相连接。存储器也可以和处理器集成在一起。
通信接口,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如辅助设备、无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN)等。通信接口可以包括接收单元实现接收功能,以及发送单元实现发送功能。
可选的,所述访问请求处理装置还可以包括通信总线,该通信总线可以是工业标准体系结构(industry standard architecture,ISA)总线、外部设备互连(peripheralcomponent interconnect,PCI)总线或扩展工业标准体系结构(extended industrystandard architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
需要说明的是,本申请实施例的具体实现过程可参见上述方法实施例所述的具体实现过程,在此不再赘述。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者TRP等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、ROM、RAM、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种访问请求处理方法,其特征在于,所述方法包括:
接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;
确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;
根据所述第一目标参数访问所述第一服务器。
2.根据权利要求1所述的方法,其特征在于,所述第一目标参数的格式为YML。
3.根据权利要求1或2所述的方法,其特征在于,所述第一访问请求与第二访问请求存在数据依赖关系,所述第二访问请求为所述多个访问请求中除了所述第一访问请求的任一访问请求;
所述方法还包括:
获取所述第一访问请求的请求结果,根据所述第一访问请求的请求结果更新所述第二访问请求的请求参数。
4.根据权利要求1或2所述的方法,其特征在于,所述第一访问请求与第二访问请求不存在数据依赖关系;
所述方法还包括:
分别获取所述第一访问请求和所述第二访问请求的请求结果,根据第二配置规则将所述第一访问请求的请求结果与所述第二访问请求的请求结果进行合并,得到第一结果。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
对所述第一访问请求的请求结果或第一结果进行定制化处理。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述第一访问请求包括jwt;
所述确定所述客户端是否被授权,包括:
确定所述jwt中的权限信息是否与所述第一服务器的API相匹配。
7.根据权利要求6所述的方法,其特征在于,接收客户端发送的多个访问请求之前,所述方法还包括:
根据所述客户端发送的授权请求生成所述权限信息,所述权限信息包括用户信息、设备信息、多租户信息、调用服务上下文、调用权限中的至少一种。
8.一种访问请求处理装置,其特征在于,所述装置包括:
接收单元,用于接收一个客户端发送的多个访问请求,每个访问请求携带请求参数;
转换单元,用于确定所述客户端是否被授权,在所述客户端被授权的情况下,根据第一配置规则将第一访问请求中的请求参数转换为第一目标参数,所述第一访问请求为所述多个访问请求中的任一访问请求,所述第一目标参数的格式满足第一服务器的API格式需求,所述第一服务器为所述第一访问请求对应的服务器;
访问单元,用于根据所述第一目标参数访问所述第一服务器。
9.一种访问请求处理装置,其特征在于,包括处理器、存储器、通信接口,以及一个或多个程序,所述一个或多个程序被存储在所述存储器中,并且被配置由所述处理器执行,所述程序包括用于执行如权利要求1-7任一项所述的方法中的步骤的指令。
10.一种计算机可读存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011000156.1A CN112131021B (zh) | 2020-09-21 | 2020-09-21 | 一种访问请求处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011000156.1A CN112131021B (zh) | 2020-09-21 | 2020-09-21 | 一种访问请求处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112131021A true CN112131021A (zh) | 2020-12-25 |
CN112131021B CN112131021B (zh) | 2024-01-12 |
Family
ID=73842204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011000156.1A Active CN112131021B (zh) | 2020-09-21 | 2020-09-21 | 一种访问请求处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112131021B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112733190A (zh) * | 2021-01-20 | 2021-04-30 | 北京联创信安科技股份有限公司 | 数据处理方法、装置、电子设备、系统和存储介质 |
CN112887334A (zh) * | 2021-03-04 | 2021-06-01 | 浪潮云信息技术股份公司 | 受限环境下分布式认证方法及系统 |
CN112966292A (zh) * | 2021-05-19 | 2021-06-15 | 北京仁科互动网络技术有限公司 | 元数据访问权限控制方法、系统、电子设备及存储介质 |
CN113348453A (zh) * | 2021-04-27 | 2021-09-03 | 华为技术有限公司 | 访问方法、装置和系统 |
CN114567483A (zh) * | 2022-02-28 | 2022-05-31 | 天翼安全科技有限公司 | 一种数据传输的方法、装置及电子设备 |
CN115333712A (zh) * | 2022-08-09 | 2022-11-11 | 北京赛目科技有限公司 | 一种双工通信的api接口管理系统、方法及存储介质 |
CN116401146A (zh) * | 2023-01-16 | 2023-07-07 | 宁德时代(上海)智能科技有限公司 | 一种数据交互方法、装置、存储介质、服务器及车辆 |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835755A (en) * | 1994-04-04 | 1998-11-10 | At&T Global Information Solutions Company | Multi-processor computer system for operating parallel client/server database processes |
CN102724647A (zh) * | 2012-06-06 | 2012-10-10 | 电子科技大学 | 一种能力访问授权方法及系统 |
CN104331457A (zh) * | 2014-10-31 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种基于数据库节点的数据访问方法及系统 |
CN104376029A (zh) * | 2014-04-10 | 2015-02-25 | 亚信科技(中国)有限公司 | 一种数据的处理方法及系统 |
CN105589748A (zh) * | 2014-10-22 | 2016-05-18 | 阿里巴巴集团控股有限公司 | 一种业务请求处理方法及装置 |
US9477523B1 (en) * | 2013-06-25 | 2016-10-25 | Amazon Technologies, Inc. | Scheduling data access jobs based on job priority and predicted execution time using historical execution data |
CN107181779A (zh) * | 2016-03-10 | 2017-09-19 | 阿里巴巴集团控股有限公司 | 访问请求的处理方法、装置和系统 |
CN107908549A (zh) * | 2017-10-24 | 2018-04-13 | 北京小米移动软件有限公司 | 测试用例生成方法、装置及计算机可读存储介质 |
CN108647540A (zh) * | 2018-04-13 | 2018-10-12 | 成都大学 | 一种基于改进型epc g1g2协议的安全访问方法及系统 |
CN109067728A (zh) * | 2018-07-25 | 2018-12-21 | 苏州科达科技股份有限公司 | 应用程序接口的访问控制方法、装置、服务器及存储介质 |
CN109617974A (zh) * | 2018-12-21 | 2019-04-12 | 珠海金山办公软件有限公司 | 一种请求处理方法、装置及服务器 |
CN109815731A (zh) * | 2018-12-29 | 2019-05-28 | 深圳云天励飞技术有限公司 | 权限处理方法及相关设备 |
CN109905410A (zh) * | 2019-04-17 | 2019-06-18 | 北京搜狐新媒体信息技术有限公司 | Web应用安全防护方法与Web应用防火墙系统 |
CN111431908A (zh) * | 2020-03-26 | 2020-07-17 | 深圳壹账通智能科技有限公司 | 一种访问处理方法、装置及可读存储介质 |
CN111600909A (zh) * | 2020-06-24 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、协议转换设备及存储介质 |
-
2020
- 2020-09-21 CN CN202011000156.1A patent/CN112131021B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5835755A (en) * | 1994-04-04 | 1998-11-10 | At&T Global Information Solutions Company | Multi-processor computer system for operating parallel client/server database processes |
CN102724647A (zh) * | 2012-06-06 | 2012-10-10 | 电子科技大学 | 一种能力访问授权方法及系统 |
US9477523B1 (en) * | 2013-06-25 | 2016-10-25 | Amazon Technologies, Inc. | Scheduling data access jobs based on job priority and predicted execution time using historical execution data |
CN104376029A (zh) * | 2014-04-10 | 2015-02-25 | 亚信科技(中国)有限公司 | 一种数据的处理方法及系统 |
CN105589748A (zh) * | 2014-10-22 | 2016-05-18 | 阿里巴巴集团控股有限公司 | 一种业务请求处理方法及装置 |
CN104331457A (zh) * | 2014-10-31 | 2015-02-04 | 北京思特奇信息技术股份有限公司 | 一种基于数据库节点的数据访问方法及系统 |
CN107181779A (zh) * | 2016-03-10 | 2017-09-19 | 阿里巴巴集团控股有限公司 | 访问请求的处理方法、装置和系统 |
CN107908549A (zh) * | 2017-10-24 | 2018-04-13 | 北京小米移动软件有限公司 | 测试用例生成方法、装置及计算机可读存储介质 |
CN108647540A (zh) * | 2018-04-13 | 2018-10-12 | 成都大学 | 一种基于改进型epc g1g2协议的安全访问方法及系统 |
CN109067728A (zh) * | 2018-07-25 | 2018-12-21 | 苏州科达科技股份有限公司 | 应用程序接口的访问控制方法、装置、服务器及存储介质 |
CN109617974A (zh) * | 2018-12-21 | 2019-04-12 | 珠海金山办公软件有限公司 | 一种请求处理方法、装置及服务器 |
CN109815731A (zh) * | 2018-12-29 | 2019-05-28 | 深圳云天励飞技术有限公司 | 权限处理方法及相关设备 |
CN109905410A (zh) * | 2019-04-17 | 2019-06-18 | 北京搜狐新媒体信息技术有限公司 | Web应用安全防护方法与Web应用防火墙系统 |
CN111431908A (zh) * | 2020-03-26 | 2020-07-17 | 深圳壹账通智能科技有限公司 | 一种访问处理方法、装置及可读存储介质 |
CN111600909A (zh) * | 2020-06-24 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、协议转换设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
PENG WAN;YAFENG ZHAN;: "Study on the Two-Sides Matching between Multiple Rovers and Multiple Orbiters in Mars Relay Communications", 中国通信, no. 07 * |
霍远国;马殿富;刘建;李竹青;: "面向Web服务资源的两层访问控制方法", 计算机科学, no. 07 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112733190A (zh) * | 2021-01-20 | 2021-04-30 | 北京联创信安科技股份有限公司 | 数据处理方法、装置、电子设备、系统和存储介质 |
CN112733190B (zh) * | 2021-01-20 | 2024-03-08 | 北京联创信安科技股份有限公司 | 数据处理方法、装置、电子设备、系统和存储介质 |
CN112887334A (zh) * | 2021-03-04 | 2021-06-01 | 浪潮云信息技术股份公司 | 受限环境下分布式认证方法及系统 |
CN113348453A (zh) * | 2021-04-27 | 2021-09-03 | 华为技术有限公司 | 访问方法、装置和系统 |
CN112966292A (zh) * | 2021-05-19 | 2021-06-15 | 北京仁科互动网络技术有限公司 | 元数据访问权限控制方法、系统、电子设备及存储介质 |
CN114567483A (zh) * | 2022-02-28 | 2022-05-31 | 天翼安全科技有限公司 | 一种数据传输的方法、装置及电子设备 |
CN114567483B (zh) * | 2022-02-28 | 2024-03-29 | 天翼安全科技有限公司 | 一种数据传输的方法、装置及电子设备 |
CN115333712A (zh) * | 2022-08-09 | 2022-11-11 | 北京赛目科技有限公司 | 一种双工通信的api接口管理系统、方法及存储介质 |
CN115333712B (zh) * | 2022-08-09 | 2023-08-04 | 北京赛目科技股份有限公司 | 一种双工通信的api接口管理系统、方法及存储介质 |
CN116401146A (zh) * | 2023-01-16 | 2023-07-07 | 宁德时代(上海)智能科技有限公司 | 一种数据交互方法、装置、存储介质、服务器及车辆 |
CN116401146B (zh) * | 2023-01-16 | 2023-12-22 | 宁德时代(上海)智能科技有限公司 | 一种数据交互方法、装置、存储介质、服务器及车辆 |
Also Published As
Publication number | Publication date |
---|---|
CN112131021B (zh) | 2024-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112131021B (zh) | 一种访问请求处理方法及装置 | |
CN109617907B (zh) | 认证方法、电子装置及计算机可读存储介质 | |
US10142326B2 (en) | Attribute-based access control | |
CN112333198B (zh) | 安全跨域登录方法、系统及服务器 | |
CN110839087B (zh) | 接口调用方法及装置、电子设备和计算机可读存储介质 | |
CN110365684B (zh) | 应用集群的访问控制方法、装置和电子设备 | |
US20210036854A1 (en) | Dynamic implementation and management of hash-based consent and permissioning protocols | |
KR20150070388A (ko) | 집중 보안 엔진을 사용하는 웹 서비스 제공자를 위한 프라이버시 강화 키 관리 | |
US20230370265A1 (en) | Method, Apparatus and Device for Constructing Token for Cloud Platform Resource Access Control | |
CN111526111B (zh) | 登录轻应用的控制方法、装置和设备及计算机存储介质 | |
US20130291076A1 (en) | Dynamic replacement of security credentials for secure proxying | |
CN113271289B (zh) | 用于资源授权和访问的方法、系统和计算机存储介质 | |
WO2023241060A1 (zh) | 数据访问方法和装置 | |
US11146552B1 (en) | Decentralized application authentication | |
CN109951291B (zh) | 基于可信执行环境的内容共享方法及装置、多媒体设备 | |
CN116192483A (zh) | 认证鉴权方法、装置、设备及介质 | |
CN111614731A (zh) | 物联网设备接入区块链方法、系统、聚合网关及存储介质 | |
WO2022088710A1 (zh) | 一种镜像管理方法及装置 | |
US20240039707A1 (en) | Mobile authenticator for performing a role in user authentication | |
CN111355583B (zh) | 一种业务提供系统、方法、装置、电子设备及存储介质 | |
CN112699404A (zh) | 一种校验权限的方法、装置、设备及存储介质 | |
CN111949959A (zh) | Oauth协议中的授权认证方法及装置 | |
Tiwari et al. | Design and Implementation of Enhanced Security Algorithm for Hybrid Cloud using Kerberos | |
US11595215B1 (en) | Transparently using macaroons with caveats to delegate authorization for access | |
US11595389B1 (en) | Secure deployment confirmation of IOT devices via bearer tokens with caveats |
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 | ||
CB02 | Change of applicant information |
Address after: 201821 room 208, building 4, No. 1411, Yecheng Road, Jiading Industrial Zone, Jiading District, Shanghai Applicant after: Botai vehicle networking technology (Shanghai) Co.,Ltd. Address before: Room 208, building 4, 1411 Yecheng Road, Jiading Industrial Zone, Jiading District, Shanghai, 201800 Applicant before: SHANGHAI PATEO ELECTRONIC EQUIPMENT MANUFACTURING Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |