CN113132114A - 多云管统一接口网关的实现方法、装置、介质及设备 - Google Patents
多云管统一接口网关的实现方法、装置、介质及设备 Download PDFInfo
- Publication number
- CN113132114A CN113132114A CN202110434878.6A CN202110434878A CN113132114A CN 113132114 A CN113132114 A CN 113132114A CN 202110434878 A CN202110434878 A CN 202110434878A CN 113132114 A CN113132114 A CN 113132114A
- Authority
- CN
- China
- Prior art keywords
- cloud
- function
- unified interface
- request
- interface
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种多云管统一接口网关的实现方法、装置、介质及设备,该方法包括步骤:在获取到统一接口网关请求时,调用安全控制云函数对所述统一接口网关请求的合法性进行校验;在校验通过后,判断所述统一接口网关请求是否指定可使用缓存,若是,则调用缓存云函数;若否,则调用求解目标函数云函数,求解得到本次请求的处理云函数;调用匹配到的云函数进行实际云接口的调用;将接口封装成统一格式。本发明通过使用云原生函数服务和接口网关作为基础运行组件,无需对服务运行的环境部署和运维,提高开发效率并减少资源浪费。
Description
技术领域
本发明属于云计算技术领域,具体涉及一种多云管统一接口网关的实现方法、装置、介质及设备。
背景技术
随着云计算的普及,越来越多的客户会同时使用多个云厂商的产品和服务,但不同云厂商的产品会存在不少差异,因此就产生了统一纳管多种云环境的需求。针对具体云的操作,一般的对接方式有两种,一种是通过调用云平台的rest API;另外一种是直接使用云平台提供的SDK进行调用,这种方式在对接多种云平台时会遇到麻烦,因为不同云厂商的接口标准不一致。要实现多云资源的纳管,就必须要对各种云资源、云服务的操作接口进行一致性的抽象,形成统一的接口标准,然后再针对不同云厂商的api进行编码适配,形成多云对接的适配器。具体应用会在工程代码中引用这种适配器进行多云的操作,常见的适配器一般有开源类库(如libcloud)或者自研的,本质上来说还是一种代码级别的实现方式。代码级别的实现方式回存在以下缺陷:1、依赖具体的开发语言,适配器需要整体发布,扩展性差;2、适配器被大量应用引用,无法统一管理,统一维护和升级;3、缺少统一的调度层,无法对云接口的访问进行整体控制,无法审计,无法度量;4、运维困难,难以进行横向扩张,出现性能问题只能依靠增加机器配置;5、代码发布困难,只能整体发布,拖慢产品迭代效率。
发明内容
为了克服上述技术缺陷,本发明提供了一种多云管统一接口网关的实现方法,包括步骤:
在获取到统一接口网关请求时,调用安全控制云函数对所述统一接口网关请求的合法性进行校验;
在校验通过后,判断所述统一接口网关请求是否指定可使用缓存,若是,则调用缓存云函数;若否,则调用求解目标函数云函数,求解得到本次请求的处理云函数;
调用匹配到的云函数进行实际云接口的调用;
将接口封装成统一格式。
作为本发明的进一步改进,在所述将接口封装成统一格式的步骤中,包括如下步骤:
如接口指定启用存储,则调用缓存云函数。
作为本发明的进一步改进,外部应用通过API网关上注册的接口地址请求统一接口网关。
作为本发明的进一步改进,接口的认证方式采用基于密钥对的签名算法。
作为本发明的进一步改进,所述调用安全控制云函数对所述统一接口网关请求的合法性进行校验的步骤,包括如下步骤:
对所述统一接口网关请求进行签名校验;
对所述统一接口网关请求进行权限校验;
对所述统一接口网关请求进行请求频次控制校验。
作为本发明的进一步改进,在所述调用求解目标函数云函数,求解得到本次请求的处理云函数的步骤中,包括如下步骤:
查询云平台上所有已经注册的云函数;
根据当前的统一接口网关请求依次对查询到的函数名称进行匹配,匹配到的云函数为本次请求的实际处理云函数。
本发明还提供了一种多云管统一接口网关的实现装置,包括:
统一接口函数模块,用于获取由外部应用发出的统一接口网关请求;
***功能函数模块,与所述统一接口函数模块连接,用于匹配统一接口网关请求的实际处理云函数;
云接口适配函数模块,与所述统一接口函数模块连接,用于对云接口进行函数适配。
本发明还提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述的多云管统一接口网关的实现方法。
本发明还提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现如上述的多云管统一接口网关的实现方法。
与现有技术相比,本发明具有以下有益效果:通过使用云原生函数服务和接口网关作为基础运行组件,无需对服务运行的环境部署和运维,同时又天然获得弹性伸缩和负载均衡的能力,结合各平台提供的云函数部署工具可以方便的实现云函数的快速迭代和灰度发布,提高开发效率并减少资源浪费。同时基于云函数实现特定领域网关的方式方法,可以有效推广。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明,其中:
图1为实施例1所述实现方法的流程图;
图2为实施例1所述实现方式的另一流程图;
图3为实施例2所述实现装置的结构示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
实施例1
本实施例提供了一种多云管统一接口网关的实现方法,如图1和图2所示,包括步骤:
S1、外部应用通过API网关上注册的接口地址请求统一接口网关,接口的认证方式采用基于密钥对的签名算法,接口的认证方式采用基于密钥对的签名算法,标准的请求结构如表1所示,在获取到统一接口网关请求时,调用安全控制云函数对统一接口网关请求的合法性进行校验。
表1标准请求结构
具体的,合法性校验包括:签名校验、权限校验和请求频次校验,签名校验通过查询accessKey对应的SecurityKey按相同签名算法计算签名,并与请求中的签名进行比较;权限校验通过accessKey查询权限设置情况,对于未授权调用的接口进行拦截;请求频次控制校验按***配置策略,对恶意请求进行拦截。
S2、在校验通过后,判断统一接口网关请求是否指定可使用缓存,若是,则调用缓存云函数;若否,则调用求解目标函数云函数,求解得到本次请求的处理云函数。
求解目标函数云函数的求解过程为:查询云平台上所有已经注册的云函数;根据当前的统一接口网关请求的cloudType和action依次对查询到的函数名称进行匹配,首选规则为{cloudType}_{action},其次为{cloudType},匹配到的云函数为本次请求的实际处理云函数。
S3、调用匹配到的云函数进行实际云接口的调用。
S4、将接口封装成统一格式进行返回,如接口指定启用存储,则调用缓存云函数缓存返回结果。
本实施例基于云原生的云函数和云网关服务,实现了一套多云管统一接口网关。下游应用可以通过一致性的请求参数调用网关接口,以实现对不同云平台上的资源进行操作。多云管云统一接口网关本身是一个独立的云函数,其主要功能在于固化了一套适用于云函数体系下的网关逻辑,网关内部的功能由一组功能函数来实现。不同云平台的接口适配也是通过云函数进行实现,云接口适配函数的粒度可以以云为单位,也可以以具体的操作接口为单位。云接口适配函数的命名需要遵循一定的规范,此规范是接口路由的基础。依照各云平台的规则,云函数需要将其触发类型设定为云API Gateway,即将云函数绑定到云网关上。
实施例2
本实施例提供了一种多云管统一接口网关的实现装置,如图3所示,包括:统一接口函数模块、***功能函数模块和云接口适配函数模块,其中,统一接口函数模块,是多云关统一接口网关的入口,定义了网关的核心逻辑,用于获取由外部应用发出的统一接口网关请求;
***功能函数模块与统一接口函数模块连接,用于匹配统一接口网关请求的实际处理云函数,***功能函数模块的功能还包括:支撑网关核心功能的函数集,包含安全控制、函数路由、缓存和审计日志;***功能函数模块包括:安全控制云函数、函数路由云函数、缓存云函数和日志云函数,安全控制云函数负责校验请求签名的正确性和接口的访问权限控制,函数路由云函数负责根据指定的云类型和接口查询到对应的处理函数,缓存云函数用于根据存取云接口的返回数据,日志云函数用于接口审计;云接口适配函数模块,与统一接口函数模块连接,针对具体云的接口适配函数,负责操作具体的云资源。
实施例3
本实施例提供了一种计算机可读存储介质,可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现实施例1中的多云管统一接口网关的实现方法。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、***、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读存储介质上,计算机可读存储介质可以包括计算机可读存储介质(或非暂时性介质)和通信介质(或暂时性介质)。
如本领域普通技术人员公知的,术语计算机可读存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机可读存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
实施例4
本实施例提供了一种计算机设备,计算机设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现实施例1中的多云管统一接口网关的实现方法。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,故凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (9)
1.多云管统一接口网关的实现方法,其特征在于,包括步骤:
在获取到统一接口网关请求时,调用安全控制云函数对所述统一接口网关请求的合法性进行校验;
在校验通过后,判断所述统一接口网关请求是否指定可使用缓存,若是,则调用缓存云函数;若否,则调用求解目标函数云函数,求解得到本次请求的处理云函数;
调用匹配到的云函数进行实际云接口的调用;
将接口封装成统一格式。
2.根据权利要求1所述的实现方式,其特征在于,在所述将接口封装成统一格式的步骤中,包括如下步骤:
如接口指定启用存储,则调用缓存云函数。
3.根据权利要求1所述的实现方法,其特征在于,外部应用通过API网关上注册的接口地址请求统一接口网关。
4.根据权利要求3所述的实现方法,其特征在于,接口的认证方式采用基于密钥对的签名算法。
5.根据权利要求1所述的实现方法,其特征在于,所述调用安全控制云函数对所述统一接口网关请求的合法性进行校验的步骤,包括如下步骤:
对所述统一接口网关请求进行签名校验;
对所述统一接口网关请求进行权限校验;
对所述统一接口网关请求进行请求频次控制校验。
6.根据权利要求1所述的实现方法,其特征在于,在所述调用求解目标函数云函数,求解得到本次请求的处理云函数的步骤中,包括如下步骤:
查询云平台上所有已经注册的云函数;
根据当前的统一接口网关请求依次对查询到的函数名称进行匹配,匹配到的云函数为本次请求的实际处理云函数。
7.多云管统一接口网关的实现装置,其特征在于,包括:
统一接口函数模块,用于获取由外部应用发出的统一接口网关请求;
***功能函数模块,与所述统一接口函数模块连接,用于匹配统一接口网关请求的实际处理云函数;
云接口适配函数模块,与所述统一接口函数模块连接,用于对云接口进行函数适配。
8.计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如权利要求1至6任一所述的多云管统一接口网关的实现方法。
9.计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现如权利要求1至6任一项所述的多云管统一接口网关的实现方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110434878.6A CN113132114B (zh) | 2021-04-22 | 2021-04-22 | 多云管统一接口网关的实现方法、装置、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110434878.6A CN113132114B (zh) | 2021-04-22 | 2021-04-22 | 多云管统一接口网关的实现方法、装置、介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113132114A true CN113132114A (zh) | 2021-07-16 |
CN113132114B CN113132114B (zh) | 2023-03-10 |
Family
ID=76779044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110434878.6A Active CN113132114B (zh) | 2021-04-22 | 2021-04-22 | 多云管统一接口网关的实现方法、装置、介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113132114B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114615332A (zh) * | 2022-02-24 | 2022-06-10 | 阿里巴巴(中国)有限公司 | 云产品的访问方法、装置、***、存储介质及计算机终端 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022431A (zh) * | 2007-03-09 | 2007-08-22 | ***通信集团福建有限公司 | 接口网关及接口网关的数据处理方法 |
CN101969475A (zh) * | 2010-11-15 | 2011-02-09 | 张军 | 基于云计算的商业数据可控分发与融合应用*** |
CN104202339A (zh) * | 2014-09-24 | 2014-12-10 | 广西大学 | 一种基于用户行为的跨云认证服务方法 |
CN109597609A (zh) * | 2018-12-03 | 2019-04-09 | 广东鸭梨科技集团股份有限公司 | 一种软件组装*** |
CN110049048A (zh) * | 2019-04-22 | 2019-07-23 | 易联众民生(厦门)科技有限公司 | 一种政务公共服务的数据访问方法、设备及可读介质 |
CN111049695A (zh) * | 2020-01-09 | 2020-04-21 | 深圳壹账通智能科技有限公司 | 云网关配置方法和*** |
CN111600909A (zh) * | 2020-06-24 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、协议转换设备及存储介质 |
US20200382610A1 (en) * | 2019-05-31 | 2020-12-03 | Hewlett Packard Enterprise Development Lp | Cloud migration between cloud management platforms |
-
2021
- 2021-04-22 CN CN202110434878.6A patent/CN113132114B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022431A (zh) * | 2007-03-09 | 2007-08-22 | ***通信集团福建有限公司 | 接口网关及接口网关的数据处理方法 |
CN101969475A (zh) * | 2010-11-15 | 2011-02-09 | 张军 | 基于云计算的商业数据可控分发与融合应用*** |
CN104202339A (zh) * | 2014-09-24 | 2014-12-10 | 广西大学 | 一种基于用户行为的跨云认证服务方法 |
CN109597609A (zh) * | 2018-12-03 | 2019-04-09 | 广东鸭梨科技集团股份有限公司 | 一种软件组装*** |
CN110049048A (zh) * | 2019-04-22 | 2019-07-23 | 易联众民生(厦门)科技有限公司 | 一种政务公共服务的数据访问方法、设备及可读介质 |
US20200382610A1 (en) * | 2019-05-31 | 2020-12-03 | Hewlett Packard Enterprise Development Lp | Cloud migration between cloud management platforms |
CN111049695A (zh) * | 2020-01-09 | 2020-04-21 | 深圳壹账通智能科技有限公司 | 云网关配置方法和*** |
CN111600909A (zh) * | 2020-06-24 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、协议转换设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114615332A (zh) * | 2022-02-24 | 2022-06-10 | 阿里巴巴(中国)有限公司 | 云产品的访问方法、装置、***、存储介质及计算机终端 |
Also Published As
Publication number | Publication date |
---|---|
CN113132114B (zh) | 2023-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108305072B (zh) | 部署区块链网络的方法、设备和计算机存储介质 | |
US10148731B2 (en) | Methods, systems, and computer readable media for on-boarding virtualized network function (VNF) packages in a network functions virtualization (NFV) system | |
US11204983B2 (en) | Scoring cloud packages for risk assessment automation | |
WO2021255547A1 (en) | Preventing unauthorized package deployment in clusters | |
CN110677453A (zh) | 基于ZooKeeper的分布式锁服务实现方法、装置、设备及存储介质 | |
CN110673933A (zh) | 基于ZooKeeper的分布式异步队列实现方法、装置、设备及介质 | |
US9069969B2 (en) | Managing software patch installations | |
CN112035344A (zh) | 多场景测试方法、装置、设备和计算机可读存储介质 | |
CN112073374B (zh) | 信息拦截方法、装置及设备 | |
CN113132114B (zh) | 多云管统一接口网关的实现方法、装置、介质及设备 | |
US20210329003A1 (en) | On-the-fly creation of transient least privileged roles for serverless functions | |
CN115934202A (zh) | 一种数据管理方法、***、数据服务网关及存储介质 | |
CN112445860B (zh) | 一种处理分布式事务的方法和装置 | |
CN111475758A (zh) | 面向新一代电网调度控制***的应用商店调度方法及*** | |
CN113076248B (zh) | 一种应用处理方法、装置、设备及可读存储介质 | |
CN113282589A (zh) | 一种数据获取方法和装置 | |
CN113742235A (zh) | 一种校验代码的方法和装置 | |
CN110807195A (zh) | 一种智能合约的发布方法、发布平台装置及发布*** | |
CN106485139A (zh) | 一种应用程序的安全验证方法 | |
CN113761503B (zh) | 接口调用的处理方法及装置 | |
CN106845926A (zh) | 一种第三方支付监管***分布式数据流处理方法及*** | |
CN117272278B (zh) | 用于数字资产平台的去中心化管理方法及装置 | |
CN109918895B (zh) | 用于输出数据的方法、电子设备和计算机可读介质 | |
CN108063679A (zh) | 一种云管理平台的升级方法及装置 | |
CN117235765A (zh) | 并发签名方法、装置、电子设备及计算机可读存储介质 |
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 |