CN110224997B - 基于网关的服务暴露方法、装置及终端设备 - Google Patents

基于网关的服务暴露方法、装置及终端设备 Download PDF

Info

Publication number
CN110224997B
CN110224997B CN201910422766.1A CN201910422766A CN110224997B CN 110224997 B CN110224997 B CN 110224997B CN 201910422766 A CN201910422766 A CN 201910422766A CN 110224997 B CN110224997 B CN 110224997B
Authority
CN
China
Prior art keywords
intranet
service
registration information
address
general
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
CN201910422766.1A
Other languages
English (en)
Other versions
CN110224997A (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.)
OneConnect Financial Technology Co Ltd Shanghai
Original Assignee
OneConnect Financial Technology Co Ltd Shanghai
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 OneConnect Financial Technology Co Ltd Shanghai filed Critical OneConnect Financial Technology Co Ltd Shanghai
Priority to CN201910422766.1A priority Critical patent/CN110224997B/zh
Publication of CN110224997A publication Critical patent/CN110224997A/zh
Application granted granted Critical
Publication of CN110224997B publication Critical patent/CN110224997B/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/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0236Filtering by address, protocol, port number or service, e.g. IP-address or URL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明适用于数据处理技术领域,提供了基于网关的服务暴露方法、装置、终端设备以及计算机可读存储介质,包括:对预设的通用服务进行暴露;读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表;通过所述通用服务拦截调用请求;获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。本发明简化了暴露流程,省略了在内网平台中创建与内网服务对应的接口的操作,提升了服务暴露的效率和便利性。

Description

基于网关的服务暴露方法、装置及终端设备
技术领域
本发明属于数据处理技术领域,尤其涉及基于网关的服务暴露方法、装置、终端设备以及计算机可读存储介质。
背景技术
随着计算机技术和通信技术的快速发展,针对于目前的单位或政府部门存在的数据保密需求,通常会在单位或政府部门的网络架构中应用网络隔离的方案,使得实现不同职能的内部单位之间相互隔离,保证数据安全。但是由于不同的内部单位之间通常也会存在一定的通信需求,故在已应用网络隔离方案的基础上,通常会搭建一个内网平台进行交互。
在应用网络隔离方案的基础上,若一个内部网络A想通过内网平台访问另一个内部网络B所提供的服务,则要求内部网络B首先将提供的服务在内网平台中进行暴露,从而在内网平台中创建调用该服务的接口,如此内网平台才能将内部网络A发起的请求转发至该服务。在现有技术中,每对一个内网服务进行暴露时都要经过固定的暴露流程,服务暴露的便利性低,且在待暴露的内网服务较多时无法实现批量暴露。
发明内容
有鉴于此,本发明实施例提供了基于网关的服务暴露方法、装置、终端设备以及计算机可读存储介质,以解决现有技术中服务暴露的过程复杂,便利性低,无法实现批量暴露的问题。
本发明实施例的第一方面提供了一种基于网关的服务暴露方法,包括:
对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括所述内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求;
获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
本发明实施例的第二方面提供了一种基于网关的服务暴露装置,包括:
暴露单元,用于对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
创建单元,用于读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括所述内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
拦截单元,用于调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求;
判断单元,用于获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
转发单元,用于若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
本发明实施例的第三方面提供了一种终端设备,所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括所述内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求;
获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如下步骤:
对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括所述内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求;
获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
本发明实施例与现有技术相比存在的有益效果是:
本发明实施例通过暴露预设的通用服务,同时读取内网平台中已有的所有内网登记信息,然后通过调用通用服务来拦截调用请求,在存在包括的内网服务地址与调用请求中的目的地址一致的目标内网登记信息时,将调用请求转发到该目标内网登记信息对应的内网服务中,本发明实施例简化了暴露流程,省略了在内网平台中创建与内网服务对应的接口的操作,提升了服务暴露的效率和便利性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的基于网关的服务暴露方法的实现流程图;
图2是本发明实施例二提供的基于网关的服务暴露方法的实现流程图;
图3是本发明实施例三提供的基于网关的服务暴露方法的实现流程图;
图4是本发明实施例四提供的基于网关的服务暴露方法的实现流程图;
图5是本发明实施例五提供的基于网关的服务暴露装置的结构框图;
图6是本发明实施例六提供的终端设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1示出了本发明实施例提供的基于网关的服务暴露方法的实现流程,详述如下:
在S101中,对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求。
本发明实施例针对于应用网络隔离方案的网络架构,在该网络架构中,不同的内部网络之间相互隔离,仅能通过内网平台进行数据通信,其中,本发明实施例对网络隔离的实现手段并不做限定,比如可利用防火墙或白名单机制等方式实现网络隔离。在传统方式中,内部网络提供的服务只有在内网平台暴露,并创建对应的接口后,才能通过内网平台将调用该服务的请求转发至该接口,从而完成调用,整个暴露过程较为繁琐,故在本发明实施例中,暴露预设的通用服务,并通过在内网平台中暴露该通用服务来取代暴露内网服务的过程,其中,该通用服务通过适配所有内网服务的地址(为了便于区分,后文将内网服务的地址命名为内网服务地址),从而拦截调用请求,通用服务的具体配置方式在后文进行详细阐述。
可选地,将通用服务部署于网关层中,该网关层为外来请求进行包装及转发的路由规则模块。为了更好地实现后续的请求转发工作,在本发明实施例中,可额外在内部网络与内网平台之间创建一个路由规则模块,即网关层,并将通用服务部署于网关层中,使得通用服务的相关调用过程均在网关层内完成,减少内网平台的工作量。
在S102中,读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括所述内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应。
与暴露通用服务同时地,读取内网平台中已添加的所有内网登记信息,内网登记信息用于描述内网服务,可由内网服务的提供方(如某个内部网络的管理人员)预先添加至内网平台中,本发明实施例对具体的添加方式并不做限定。为了提升内网服务的有效性,本发明实施例预先限定内网登记信息至少包括对应的内网服务的内网服务地址,在此基础上,还可设置内网登记信息的添加格式,保证所有内网登记信息的格式统一,比如设置内网登记信息包括内网服务的名称、内网服务地址以及内网服务所在的内部网络的端口号,若添加至内网平台中的内网登记信息不符合上述添加格式,如仅包含内网服务地址,则向该内网登记信息的提供方输出格式错误的提示,并退回该内网登记信息。值得一提的是,本发明实施例对内网服务的类型并不做限定,比如内网服务可为数据获取服务(从内网服务所在的内部网络中获取数据)或数据删除服务(删除内网服务所在的内部网络中的数据)等。在获取到内网平台中所有已添加的内网登记信息后,基于所有内网登记信息创建配置表,其中,配置表泛指一种集中存储格式,比如配置表的格式可为数据库表。
在S103中,调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求。
完成对通用服务的暴露后,便可调用通用服务,并在通用服务的调用过程中拦截调用请求,由于通用服务可适配所有内网服务地址,故可拦截到调用任一个内网服务的调用请求。值得一提的是,由于本发明实施例的网络架构仅限于内部网络,故调用请求的发起方通常也来自于内部网络。
在S104中,获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息。
当在通用服务的调用过程中拦截到调用请求后,获取该调用请求中的目的地址,目的地址的获取位置与调用请求应用的协议的类型相关,举例来说,假如调用请求应用的协议为超文本传输协议(HyperText Transfer Protocol,HTTP),由于HTTP请求的格式为“Method Request-URL HTTP-Version”,其中,“Method”指示该HTTP请求所用的方法(如GET、POST或DELETE等),“Request-URL”指示该HTTP请求所请求的地址,“HTTP-Version”指示该HTTP请求应用的HTTP协议版本,故可将调用请求中位于“Request-URL”位置的内容确定为目的地址。对于得到的目的地址,将其与配置表中的每个内网服务地址进行单独匹配,判断配置表中是否存在包括的内网服务地址与该目的地址一致的目标内网登记信息。
在S105中,若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
若判断出配置表存在与目的地址对应的目标内网登记信息,即该目标内网登记信息中的内网服务地址与目的地址相同,证明调用请求所请求的是该目标内网登记信息对应的内网服务,故将调用请求转发至目标内网登记信息对应的内网服务,后续内网服务可根据调用请求的内容执行对应的操作;若判断出配置表不存在与目的地址对应的目标内网登记信息,则向调用请求的发起方输出调用无效的提示。
通过图1所示实施例可知,在本发明实施例中,通过暴露预设的通用服务,同时读取内网平台中已有的内网登记信息,然后通过调用通用服务来拦截调用请求,在存在包括的内网服务地址与调用请求中的目的地址一致的目标内网登记信息时,将调用请求转发到该目标内网登记信息对应的内网服务中,本发明实施例简化了暴露流程,以暴露通用服务的操作替代了暴露内网服务,提升了服务暴露的效率和便利性。
图2所示,是在本发明实施例一的基础上,对在内网平台中对预设的通用服务进行暴露的过程进行细化后得到的一种服务暴露方法。本发明实施例提供了服务暴露方法的实现流程图,如图2所示,该服务暴露方法可以包括以下步骤:
在S201中,向所述内网平台添加所述通用服务的通用登记信息,其中,所述通用登记信息中包括预设的通用服务地址。
在本发明实施例中,可利用正则表达式的思想创建并暴露通用服务。具体地,首先向内网平台中添加通用服务的通用登记信息,该通用登记信息中包括预设的通用服务地址。为了使通用服务适配所有内网服务地址,可将通用服务地址设置为“/**”的通配符,其含义是匹配所有的地址,当然也可存在其他的设置方式,本发明实施例对此不做限定。
可选地,获取已添加的所有内网登记信息中的内网服务地址,基于所有内网服务地址分析出共性地址,并根据共性地址确定出通用服务地址。在设置通用服务地址时,还可获取已添加的所有内网登记信息中的内网服务地址,并按照地址从前到后的顺序,分析出所有内网服务地址共有的且目录最长的共性地址,基于该共性地址确定出对应的通配符,并将该通配符作为通用服务地址。举例来说,内网服务地址AddressA为“/a/b/c1”,内网服务地址AddressB为“/a/b/d1”,内网服务地址AddressC为“/a/b/e1”,则可确定出共性地址为“/a/b”,确定出对应的通配符为“/a/b/**”,其含义为匹配所有的含有“/a/b”并以“/a/b”为起始的地址,最终将该通配符确定为通用服务地址。值得一提的是,由于可能并不存在匹配所有内网服务地址的共性地址,故可按照地址从前到后的顺序,若至少两个内网服务地址在地址层级上的内容一致,则将内网服务地址划分至一个地址集中,最终得到数量尽可能少的地址集,然后,获取每个地址集的共性地址,确定出与每个共性地址对应的通用服务地址,根据每个通用服务地址部署对应的通用服务。举例来说,内网服务地址AddressD为“/example1/service1”,内网服务地址AddressE为“/example1/service2”,内网服务地址AddressF为“/example2/service3”,内网服务地址AddressG为“/example2/service4”,则可将AddressD和AddressE划分至一个地址集,将AddressF和AddressG划分至另一个地址集,可得到前者的地址集对应的共性地址为“/example1”,对应的通配符为“/example1/**”,后者的地址集对应的共性地址为“/example2”,对应的通配符为“/example2/**”,最终可得到两个通用服务地址。通过上述方法提升了设置的通用服务地址的准确性,便于后续对调用请求进行精准拦截。
在S202中,运行所述通用服务,并将所述通用服务的运行信息发送至所述内网平台,其中,所述运行信息用于生成所述内网平台调用所述通用服务的接口。
在内网平台中添加了通用登记信息后,由于通用服务可视为一个特殊的内部服务,故由通用服务的服务提供方(通常位于内部网络中)运行通用服务,并将通用服务在运行过程中产生的运行信息发送至内网平台,完成通用服务的暴露,运行信息用于生成内网平台调用通用服务的接口,后续内网平台便可通过生成的接口调用通用服务,从而实现对调用请求的拦截。其中,限定运行信息至少包括通用服务地址,除此之外,运行信息的格式可根据实际应用场景确定,比如可设置运行信息还包括通用服务的名称。
通过图2所示实施例可知,在本发明实施例中,向内网平台添加通用服务的通用登记信息,并运行通用服务,将通用服务的运行信息发送至内网平台,本发明实施例阐述了暴露通用服务的具体实现细节,通过设置通用服务地址,提升了后续拦截调用请求的准确性。
图3所示,是在本发明实施例一的基础上,对调用通用服务,并在通用服务的调用过程中拦截调用请求之后的过程进行扩展后得到的一种服务暴露方法。本发明实施例提供了服务暴露方法的实现流程图,如图3所示,该服务暴露方法可以包括以下步骤:
在S301中,根据预设的源地址列表对拦截到的所述调用请求中的来源地址进行校验,其中,所述源地址列表包括所有所述内部网络的地址。
在调用请求中包含来源地址的情况下,可对调用请求进行校验。具体地,由于调用请求必定是从内部网络发起,故可预先获取每个内部网络的地址(地址可由每个内部网络的管理人员提供,也可从网络架构的配置文件中获取,不做限定),并根据获取到的所有地址组建源地址列表。然后,获取调用请求中的来源地址(即发起该调用请求的发起方的地址),判断来源地址是否位于源地址列表中,并根据判断的结果执行不同的操作。
在S302中,若所述来源地址不位于所述源地址列表中,则丢弃所述调用请求,并输出错误提示。
若调用请求中的来源地址不位于源地址列表中,证明该调用请求的发起方未知,则丢弃调用请求,并输出错误提示。
在S303中,若所述来源地址位于所述源地址列表中,则执行获取拦截到的所述调用请求中的所述目的地址的操作。
若来源地址位于源地址列表中,证明调用请求的发起方为一个内部网络,则正常执行后续的获取拦截到的调用请求中的目的地址的操作。
通过图3所示实施例可知,在本发明实施例中,根据预设的源地址列表对拦截到的调用请求中的来源地址进行校验,若来源地址不位于源地址列表中,则丢弃调用请求,并输出错误提示;若来源地址位于源地址列表中,则执行获取拦截到的调用请求中的目的地址的操作,本发明实施例通过对调用请求进行校验,在判断出调用请求的发起方未知时,丢弃调用请求,节省了处理资源,并且提升了调用的安全性。
图4所示,是在本发明实施例一的基础上,对将调用请求转发至目标内网登记信息对应的内网服务的过程进行细化后得到的一种服务暴露方法。本发明实施例提供了服务暴露方法的实现流程图,如图4所示,该服务暴露方法可以包括以下步骤:
在S401中,将所述目标内网登记信息对应的所述内网服务确定为待调服务,并获取所述待调服务的访问格式,其中,所述访问格式用于指示所述待调服务可识别的请求的共有规则。
由于不同的内网服务对请求的要求可能不同,故在本发明实施例中,将目标内网登记信息对应的内网服务确定为待调服务,并获取待调服务的访问格式,该访问格式用于指示待调服务可识别的请求的共有规则。为了便于获取,可预先存储所有内网服务的访问格式。
在S402中,根据所述访问格式对所述调用请求进行配置,并将配置后的所述调用请求转发至所述待调服务。
在获取到访问格式后,根据访问格式对调用请求进行配置,并将配置后的调用请求转发至待调服务。为了便于理解,以下述的三个例子进行说明:比如待调服务仅能识别某个特定地址发送的请求,则可设置访问格式为请求的来源地址为该特定地址,在进行配置时,将调用请求中的来源地址替换为该特定地址;比如待调服务仅能识别应用超文本传输安全协议(Hypertext Transfer Protocol Secure,HTTPS)协议的请求,则可设置访问格式为请求应用的协议为HTTPS协议,在进行配置时,根据HTTPS协议对调用请求进行封装;比如待调服务仅能识别根据特定密钥和特定加密算法进行加密后的请求,则可设置访问格式为请求由该特定密钥和该特定加密算法进行加密得到,在进行配置时,根据该特定密钥和该特定加密算法对调用请求进行加密。
通过图4所示实施例可知,在本发明实施例中,将目标内网登记信息对应的内网服务确定为待调服务,并获取待调服务的访问格式,根据该访问格式对调用请求进行配置,并将配置后的调用请求转发至待调服务,本发明实施例通过对调用请求进行配置,使得配置后的调用请求符合待调服务的访问要求,提升了调用的成功率。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的基于网关的服务暴露方法,图5示出了本发明实施例提供的基于网关的服务暴露装置的结构框图,参照图5,该服务暴露装置包括:
暴露单元51,用于对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
创建单元52,用于读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括所述内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
拦截单元53,用于调用所述通用服务,并在所述通用服务的调用过程中拦截调用请求;
判断单元54,用于获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
转发单元55,用于若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
可选地,暴露单元51包括:
添加单元,用于向所述内网平台添加所述通用服务的通用登记信息,其中,所述通用登记信息中包括预设的通用服务地址;
运行单元,用于运行所述通用服务,并将所述通用服务的运行信息发送至所述内网平台,其中,所述运行信息用于生成所述内网平台调用所述通用服务的接口。
可选地,添加单元还包括:
分析单元,用于获取已添加的所有所述内网登记信息中的所述内网服务地址,基于所有所述内网服务地址分析出共性地址,并根据所述共性地址确定出所述通用服务地址。
可选地,拦截单元53还包括:
校验单元,用于根据预设的源地址列表对拦截到的所述调用请求中的来源地址进行校验,其中,所述源地址列表包括所有所述内部网络的地址;
丢弃单元,用于若所述来源地址不位于所述源地址列表中,则丢弃所述调用请求,并输出错误提示;
执行单元,用于若所述来源地址位于所述源地址列表中,则执行获取拦截到的所述调用请求中的所述目的地址的操作。
可选地,转发单元55包括:
格式获取单元,用于将所述目标内网登记信息对应的所述内网服务确定为待调服务,并获取所述待调服务的访问格式,其中,所述访问格式用于指示所述待调服务可识别的请求的共有规则;
配置单元,用于根据所述访问格式对所述调用请求进行配置,并将配置后的所述调用请求转发至所述待调服务。
因此,本发明实施例提供的基于网关的服务暴露装置通过暴露通用服务,简化了内网服务的暴露流程,提升了服务暴露的效率和便利性。
图6是本发明实施例提供的终端设备的示意图。如图6所示,该实施例的终端设备6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62,例如基于网关的服务暴露程序。所述处理器60执行所述计算机程序62时实现上述各个基于网关的服务暴露方法实施例中的步骤,例如图1所示的步骤S101至S105。或者,所述处理器60执行所述计算机程序62时实现上述各基于网关的服务暴露装置实施例中各单元的功能,例如图5所示单元51至55的功能。
示例性的,所述计算机程序62可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述终端设备6中的执行过程。例如,所述计算机程序62可以被分割成暴露单元、创建单元、拦截单元、判断单元以及转发单元,各单元具体功能如下:
暴露单元,用于对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
创建单元,用于读取所述内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括所述内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
拦截单元,用于调用所述通用服务,并在所述通用服务的调用过程中拦截调用请求;
判断单元,用于获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
转发单元,用于若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
所述终端设备6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图6仅仅是终端设备6的示例,并不构成对终端设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述终端设备6的内部存储单元,例如终端设备6的硬盘或内存。所述存储器61也可以是所述终端设备6的外部存储设备,例如所述终端设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述终端设备6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述终端设备所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将所述终端设备的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的终端设备和方法,可以通过其它的方式实现。例如,以上所描述的终端设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于网关的服务暴露方法,其特征在于,包括:
对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
读取内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求;
获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
2.如权利要求1所述的服务暴露方法,其特征在于,所述对预设的通用服务进行暴露,包括:
向所述内网平台添加所述通用服务的通用登记信息,其中,所述通用登记信息中包括预设的通用服务地址;
运行所述通用服务,并将所述通用服务的运行信息发送至所述内网平台,其中,所述运行信息用于生成所述内网平台调用所述通用服务的接口。
3.如权利要求2所述的服务暴露方法,其特征在于,所述向所述内网平台添加所述通用服务的通用登记信息之前,还包括:
获取已添加的所有所述内网登记信息中的所述内网服务地址,基于所有所述内网服务地址分析出共性地址,并根据所述共性地址确定出所述通用服务地址。
4.如权利要求1所述的服务暴露方法,其特征在于,所述调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求之后,还包括:
根据预设的源地址列表对拦截到的所述调用请求中的来源地址进行校验,其中,所述源地址列表包括所有所述内部网络的地址;
若所述来源地址不位于所述源地址列表中,则丢弃所述调用请求,并输出错误提示;
若所述来源地址位于所述源地址列表中,则执行获取拦截到的所述调用请求中的所述目的地址的操作。
5.如权利要求1所述的服务暴露方法,其特征在于,所述将所述调用请求转发至所述目标内网登记信息对应的所述内网服务,包括:
将所述目标内网登记信息对应的所述内网服务确定为待调服务,并获取所述待调服务的访问格式,其中,所述访问格式用于指示所述待调服务可识别的请求的共有规则;
根据所述访问格式对所述调用请求进行配置,并将配置后的所述调用请求转发至所述待调服务。
6.一种基于网关的服务暴露装置,其特征在于,包括:
暴露单元,用于对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
创建单元,用于读取内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
拦截单元,用于调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求;
判断单元,用于获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
转发单元,用于若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
7.一种终端设备,其特征在于,所述终端设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
对预设的通用服务进行暴露,其中,所述通用服务用于拦截符合所述通用服务的通用服务地址的调用请求;
读取内网平台中已添加的内网登记信息,并基于获取到的所有所述内网登记信息创建配置表,其中,所述内网登记信息包括内部网络提供的内网服务的内网服务地址,且每个所述内网登记信息与一个所述内网服务对应;
调用所述通用服务,并在所述通用服务的调用过程中拦截所述调用请求;
获取拦截到的所述调用请求中的目的地址,并判断所述配置表中是否存在包括的内网服务地址与所述目的地址一致的目标内网登记信息;
若所述配置表中存在所述目标内网登记信息,则将所述调用请求转发至所述目标内网登记信息对应的所述内网服务。
8.如权利要求7所述的终端设备,其特征在于,在内网平台中对预设的通用服务进行暴露,包括:
向所述内网平台添加所述通用服务的通用登记信息,其中,所述通用登记信息中包括预设的通用服务地址;
运行所述通用服务,并将所述通用服务的运行信息发送至所述内网平台,其中,所述运行信息用于生成所述内网平台调用所述通用服务的接口。
9.如权利要求7所述的终端设备,其特征在于,所述调用所述通用服务,并在所述通用服务的调用过程中拦截调用请求之后,还包括:
根据预设的源地址列表对拦截到的所述调用请求中的来源地址进行校验,其中,所述源地址列表包括所有所述内部网络的地址;
若所述来源地址不位于所述源地址列表中,则丢弃所述调用请求,并输出错误提示;
若所述来源地址位于所述源地址列表中,则执行获取拦截到的所述调用请求中的所述目的地址的操作。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述服务暴露方法的步骤。
CN201910422766.1A 2019-05-21 2019-05-21 基于网关的服务暴露方法、装置及终端设备 Active CN110224997B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910422766.1A CN110224997B (zh) 2019-05-21 2019-05-21 基于网关的服务暴露方法、装置及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910422766.1A CN110224997B (zh) 2019-05-21 2019-05-21 基于网关的服务暴露方法、装置及终端设备

Publications (2)

Publication Number Publication Date
CN110224997A CN110224997A (zh) 2019-09-10
CN110224997B true CN110224997B (zh) 2022-09-27

Family

ID=67821570

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910422766.1A Active CN110224997B (zh) 2019-05-21 2019-05-21 基于网关的服务暴露方法、装置及终端设备

Country Status (1)

Country Link
CN (1) CN110224997B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113259436B (zh) * 2021-05-12 2023-04-07 中国建设银行股份有限公司 网络请求的处理方法和装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7483438B2 (en) * 2005-04-14 2009-01-27 Alcatel Lucent Systems and methods for managing network services between private networks
CN101741764B (zh) * 2009-12-25 2012-08-22 金蝶软件(中国)有限公司 一种企业广域网文件传输的方法、系统
US8739111B2 (en) * 2010-02-02 2014-05-27 International Business Machines Corporation Re-factoring, rationalizing and prioritizing a service model and assessing service exposure in the service model
CN107635022A (zh) * 2016-07-18 2018-01-26 华为软件技术有限公司 跨内外网服务访问方法和装置
CN107689987B (zh) * 2017-08-11 2021-01-08 东软集团股份有限公司 虚拟网络服务暴露方法及装置

Also Published As

Publication number Publication date
CN110224997A (zh) 2019-09-10

Similar Documents

Publication Publication Date Title
CN111045756B (zh) 生成接口服务的方法、装置、计算设备和介质
CN110266517B (zh) 基于网关的外部服务调用方法、装置及终端设备
CN109922158A (zh) 基于微服务的数据处理方法、装置、介质及电子设备
CN111062024B (zh) 一种应用登录方法和装置
WO2020233361A1 (zh) 基于网关的内部服务调用方法、装置及终端设备
CN110601880A (zh) 一种云平台、业务处理方法、命令接口及计算机设备
CN110719215B (zh) 虚拟网络的流信息采集方法及装置
CN109447820B (zh) 数据处理方法、装置、计算机设备及存储介质
US20120266186A1 (en) Providing inter-platform application launch in context
WO2020217157A1 (en) On-premise and off-premise debugging
CN111163052A (zh) 连接物联网平台方法、装置、介质及电子设备
CN110224997B (zh) 基于网关的服务暴露方法、装置及终端设备
CN111447273B (zh) 云处理系统及基于云处理系统的数据处理方法
CN109522202B (zh) 一种软件测试的方法和装置
CN109522457A (zh) 数据获取方法及装置
CN112733510A (zh) 一种财务凭证生成方法、装置、设备及计算机可读存储介质
CN111046393B (zh) 漏洞信息上传方法、装置、终端设备及存储介质
CN109669678A (zh) 模板引擎整合方法、装置、电子设备及存储介质
CN114244555B (zh) 一种安全策略的调整方法
CN116668520A (zh) 一种基于网关的服务编排方法、系统、设备及存储介质
CN115374207A (zh) 业务处理方法及装置、电子设备和计算机可读存储介质
CN113014664B (zh) 网关适配方法、装置、电子设备和存储介质
CN115225394A (zh) 一种基于域名的报文拦截方法及系统
CN113032820B (zh) 文件存储方法、访问方法、装置、设备及存储介质
CN111314130B (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