CN112351015B - 一种基于api的网关控制方法 - Google Patents

一种基于api的网关控制方法 Download PDF

Info

Publication number
CN112351015B
CN112351015B CN202011172097.6A CN202011172097A CN112351015B CN 112351015 B CN112351015 B CN 112351015B CN 202011172097 A CN202011172097 A CN 202011172097A CN 112351015 B CN112351015 B CN 112351015B
Authority
CN
China
Prior art keywords
gateway
white list
verification
list table
service
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
CN202011172097.6A
Other languages
English (en)
Other versions
CN112351015A (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.)
Guangzhou Zhufeng Network Technology Co ltd
Original Assignee
Guangzhou Zhufeng Network Technology Co ltd
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 Guangzhou Zhufeng Network Technology Co ltd filed Critical Guangzhou Zhufeng Network Technology Co ltd
Priority to CN202011172097.6A priority Critical patent/CN112351015B/zh
Publication of CN112351015A publication Critical patent/CN112351015A/zh
Application granted granted Critical
Publication of CN112351015B publication Critical patent/CN112351015B/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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]

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

本发明公开了一种基于API的网关控制方法,先根据网关数据模型将各网关配置成JAR包,并为各网关配置数据库连接信息和redis服务器信息;在收到业务系统发起的业务数据请求时,根据请求对象调用各JAR包,并获取第一网关对应的第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表;然后根据获取的参数对业务请求参数进行网关鉴权,如果鉴权不通过,则反馈相应的不通过信息,如果鉴权通过,则根据转发规则,将网关鉴权过程中获得的业务数据转发给对应的业务服务端。采用本发明技术方案无需重复编码,能减少API开发的时间和人力成本。

Description

一种基于API的网关控制方法
技术领域
本发明涉及计算机领域,尤其涉及一种基于API的网关控制方法。
背景技术
当互联网渗透到生活的方方面面,各式线上服务(购物、娱乐、生活缴费、投资、教育等等)变得平常不过,服务提供方在新增服务时,会通过H5方式输出服务到自有或第三方APP、公众号、生活号等平台上,或者通过API方式输出给具备软件开发能力的代理商(渠道商)或商户。API方式是指自有客户端与服务端的API交互场景,如业务交易下单、交易数据查询等,在进行此类操作前需要用户进行注册并登录。API方式也指具备软件开发能力的下游合作伙伴服务端与服务端的API交互。
现有的APA交互需要业务系统的后台管理开发人员和HTTP服务开发人员分别开发才能实现,而两者往往不是同一机构下的员工。业务系统的开发人员需要实现实现接口请求密钥、IP白名单等交互用的鉴权数据管理,HTTP服务的开发人员需要实现接口访问鉴权、业务数据解密等非业务逻辑代码。这样的开发流程会使得工作重复,造成开发周期变长及人力成本浪费,而且业务逻辑代码和接口交互鉴权代码耦合在一起,违背软件工程设计中高内聚低耦合的要求,代码的后续维护存在一定的困难。
发明内容
本发明实施例提出一种基于API的网关控制方法,无需重复编码,减少API开发的时间和人力成本。
本发明实施例提供一种基于API的网关控制方法,包括:
根据预设的网关数据模型将各网关配置成JAR包,并为各网关配置数据库连接信息和redis服务器信息;其中,所述网关数据模型内设置有网关配置表、网关method白名单表、网关IP白名单表和网关客户白名单表;
获取业务系统发起的业务数据请求,其中所述业务数据请求包括本次请求对象和业务请求参数;
根据所述请求对象,调用各网关的JAR包,获取第一网关对应的第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表;
根据所述第一网关配置表、所述第一网关method白名单表、所述第一网关IP白名单表和所述第一网关客户白名单表,对所述业务请求参数进行网关鉴权;
如果所述业务请求参数的网关鉴权不通过,向所述业务系统反馈相应的不通过信息;如果所述业务请求参数的网关鉴权通过,则根据预设的转发规则,将在网关鉴权过程中获得的业务数据,转发给对应的业务服务端。
进一步的,所述网关配置表用于记录各客户端的网关参数,所述网关参数包括URL地址、合法性验证密钥、转发规则和网关状态;
所述网关method白名单表用于记录允许授权的method参数;
所述网关IP白名单表用于记录允许授权的IP;
所述网关客户白名单表用于记录允许授权的客户ID。
进一步的,所述根据所述请求对象,调用各网关的JAR包,获取第一网关对应的第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表,具体为:
根据所述请求对象,确定需调用的网关为第一网关,并调用所述第一网关对应的第一JAR包,获取第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表;
将所述第一网关method白名单表、第一网关IP白名单表、第一网关客户白名单表、以及所述第一网关配置表中的第一URL地址、第一合法性验证密钥、第一转发规则和第一网关状态以json格式存储到value中。
进一步的,所述根据所述第一网关配置表、所述第一网关method白名单表、所述第一网关IP白名单表和所述第一网关客户白名单表,对所述业务请求参数进行网关鉴权,具体为:
根据所述第一合法性验证密钥,对所述业务请求参数的合法性进行第一验证;若第一验证失败,则生成鉴权不通过信息;
若第一验证通过,则对所述业务请求参数进行签名,并对签名后的参数进行第二验证;若第二验证失败,则生成鉴权不通过信息;
若第二验证通过,则根据第一URL地址,对业务请求参数中的URL地址进行第三验证;若第三验证失败,则生成鉴权不通过信息;
若第三验证通过,则根据所述第一网关状态,对所述业务请求参数进行第四验证;若第四验证失败,则生成鉴权不通过信息;
若第四验证通过,则根据所述第一网关IP白名单表,对所述业务请求参数进行第五验证;若第五验证失败,则生成鉴权不通过信息;
若第五验证通过,则根据所述第一网关method白名单表,对所述业务请求参数进行第六验证;若第六验证失败,则生成鉴权不通过信息;
若第六验证通过,则在用户的登录鉴权通过后,解密所述业务请求参数中的biz_content参数,获得相应的业务数据;
根据所述第一网关客户白名单表,对所述业务请求参数进行第七验证;若第七验证失败,则生成鉴权不通过信息;
若第七验证通过,则确定所述业务请求参数通过本次网关鉴权。
进一步的,所述如果所述业务请求参数的网关鉴权通过,则根据预设的转发规则,将在网关鉴权过程中获得的业务数据,转发给对应的业务服务端,具体为:
根据所述第一转发规则,将解密所述业务请求参数中的biz_content参数后获得的业务数据,转发给对应的业务服务端。
实施本发明实施例,具有如下有益效果:
本发明实施例提供的一种基于API的网关控制方法,先根据网关数据模型将各网关配置成JAR包,并为各网关配置数据库连接信息和redis服务器信息;在收到业务系统发起的业务数据请求时,根据请求对象调用各JAR包,并获取第一网关对应的第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表;然后根据获取的参数对业务请求参数进行网关鉴权,如果鉴权不通过,则反馈相应的不通过信息,如果鉴权通过,则根据转发规则,将网关鉴权过程中获得的业务数据转发给对应的业务服务端。相比于现有技术需要不同的开发人员进行API接口开发,本发明无需重复编码,减少API开发的时间和人力成本。
附图说明
图1是本发明提供的基于API的网关控制方法的一种实施例的流程示意图;
图2是本发明提供的网关数据模型的一种实施例的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明提供的基于API的网关控制方法的一种实施例的流程示意图。该基于API的网关控制方法包括步骤101至步骤105,各步骤具体如下:
步骤101:根据预设的网关数据模型将各网关配置成JAR包,并为各网关配置数据库连接信息和redis服务器信息;其中,网关数据模型内设置有网关配置表、网关method白名单表、网关IP白名单表和网关客户白名单表。
在本实施例中,本发明的网关控制方法可以转换成相应的软件,采用JAVA开发语言、MySQL数据库、Redis缓存等,但不局限于JAVA、MySQL、Redis等技术,也可以使用其他的数据库和缓存技术。
在本实施例中,向根据网关数据模型将各网关配置成JAR包,配置所需的数据库连接信息(支持db2、oracle、mysql、sql server等关系型数据库作为永久性存储)及redis服务器信息,无需额外开发工作即可在现有的后台管理系统中管理和维护网关。
参见图2,图2是本发明提供的网关数据模型的一种实施例的示意图。网关数据模型内设置有网关配置表T_GATEWAY、网关method白名单表T_GATEWAY_METHOD、网关IP白名单表T_GATEWAY_IP和网关客户白名单表T_GATEWAY_CUST。
网关配置表用于记录各客户端的网关参数,所述网关参数包括URL地址、合法性验证密钥、转发规则和网关状态。同一APP,安卓和IOS各配置一条网关记录,微信公众号、小程序、生活号都是独立一个网关配置表。一条网关记录即为一个外放通道。下面结合图2详细说明网关配置表中比较重要的字段。
字段PARTNER_URL为URL地址,HTTP请求地址在网关记录中具有唯一性,每个不同的自有客户端或API外放下游合作伙伴都有不同的URL地址。本发明配置各自独立的URL地址的好处是可提前在防火墙进行流量统计及监控,当通道请求量异常时,可临时禁用此通道的访问,而不至于影响整个业务。
字段APP_KEY为合法性验证密钥,在网关记录中具有唯一性,网关收到HTTP请求时读取报文参数app_key来验证本次请求是否合法,同时也用于业务参数的解密。
字段FORWARDING_RULE为转发规则,某次请求通过网关检验后,网关根据此配置将请求转发到相应业务系统接口处理。
字段CUST_VERIFY用于判断是否校验接口参数cust_id(Y:校验,N:不校验)。网关根据此配置来决定是否校验接口中的业务参数cust_id是否合法。自有客户端通常配置N值,API外放下游通常配置Y。
字段STATE为网关状态,用于标记外放通道的状态,“已启用”的外放通道请求才能被网关接受,才能流转到下一个处理环节,可用于因某些原因需要临时停用通道,或与下游合作终止而长期停用通道。
网关method白名单表T_GATEWAY_METHOD用于记录允许授权的method参数,网关会校验所收到的请求参数method是否存在于此表中,不存在就会拒绝访问。如果所有method请求都被允许的话,可以配置一条*值记录。
网关IP白名单表T_GATEWAY_IP用于记录允许授权的IP,网关IP白名单采用IPv4方式的配置方式(如10.20.1.1);*号代表此段不做检查,*.*.*.*代表网关允许所有IP发起HTTP请求。
网关客户白名单表T_GATEWAY_CUST用于记录允许授权的客户ID。业务系统通常都会有客户概念在其中,此表为一个可选配表,当网关表中CUST_VERIFY字段值为Y时,表示需要网关校验接口cust_id参数,也就是说某个下游能为哪些客户发起交易接口。注:普通客户就只能为自己发起交易请求,通常就只会配置一个cust_id;集成商角色的客户就能为他所服务的多个客户发起交易请求,即需配置多个cust_id。
如图2所示,图中还包括T_GATEWAY_HIS网关历史表,用于记录网关的新增到修改全过程的所有操作日志。
步骤102:获取业务系统发起的业务数据请求,其中业务数据请求包括本次请求对象和业务请求参数。
在本实施例中,业务系统在通信时会发起相应的业务数据请求,该请求包括本次请求对象(具体是哪个网关)和业务请求参数。业务请求参数中的一部分数据是用于网关鉴权,另一部分是用于业务的后续处理。
步骤103:根据请求对象,调用各网关的JAR包,获取第一网关对应的第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表。
在本实施例中,步骤103具体为:根据请求对象,确定需调用的网关为第一网关,并调用第一网关对应的第一JAR包,获取第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表;将第一网关method白名单表、第一网关IP白名单表、第一网关客户白名单表、以及第一网关配置表中的第一URL地址、第一合法性验证密钥、第一转发规则和第一网关状态以json格式存储到value中。
在本实施例中,在确定本次请求的网关为第一网关后,key由Http接口请求参数(未加密部分)app_key作为唯一主键,当网关收到请求,通过app_key以主键方式直接取到对应的网关数据进行合法性校验(如调取不到说明本次请求为非法),并将网关所有需要校验的数据以JSON格式存储到value中,将接口方法列表(method)、商户列表(cust)、IP列表(ip)做为value值中的一部分,而非单独的hashkey方式存储,可以避免网关多次请求缓存服务器获取接口方法列表(method)、商户列表(cust)、IP列表(ip)等数据,降低网关响应耗时。
步骤104:根据第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表,对业务请求参数进行网关鉴权。
在本实施例中,步骤104具体为:
S1:根据第一合法性验证密钥,对业务请求参数的合法性进行第一验证;若第一验证失败,则生成鉴权不通过信息;若第一验证通过,则执行S2。
在本实施例中,S1的第一验证为:根据第一合法性验证密钥app_key判断是否能够调用相应的网关数据,如果能调用则通过第一验证,如果不能调用则第一验证失败。第一验证失败生成的鉴权不通信息包含“app_key不合法”这一原因。
S2:对业务请求参数进行签名,并对签名后的参数进行第二验证;若第二验证失败,则生成鉴权不通过信息;若第二验证通过,则执行S3。
在本实施例中,第二验证为对业务请求参数进行签名,再与业务请求参数中的sign参数仅比对,如果一致,则通过第二验证,如果不一致,则第二验证失败。第二验证失败生成的鉴权不通信息包含“签名失败”这一原因。
签名规则具体如下:
1请求参数按照ASCII码表的顺序进行排列;
2所有参数名和参数值(sign参数不参与签名,加密后biz_content也需参与签名)按照上面的排序连接起来,格式是:
<paramName1><paramValue1><paramName2><paramValue2>...
3将密钥分别添加到请求参数串的头部和尾部:<appSecret><请求参数字符串><appSecret>;
4对该字符串进行SHA1运算,得到摘要二进制数组;
5将二进制数组转换为十六进制字符串,获得签名,将该签名与sign参数进行比对。
S3:根据第一URL地址,对业务请求参数中的URL地址进行第三验证;若第三验证失败,则生成鉴权不通过信息;若第三验证通过,则执行S4。
在本实施例中,第三验证为判断业务请求参数中的URL地址是否与第一URL地址一致,如果一致,则通过第三验证,如果不一致,则第三验证失败。第三验证失败生成的鉴权不通信息包含“URL地址不合法”这一原因。
S4:根据第一网关状态,对业务请求参数进行第四验证;若第四验证失败,则生成鉴权不通过信息;若第四验证通过,则执行S5。
在本实施例中,第四验证为判断第一网关状态是否为已启用状态;如果是,则通过第四验证,如果不是,则第四验证失败。第四验证失败生成的鉴权不通信息包含“通道已禁用”这一原因。
S5:根据第一网关IP白名单表,对业务请求参数进行第五验证;若第五验证失败,则生成鉴权不通过信息;若第五验证通过,则执行S6。
在本实施例中,第五验证为判断业务请求参数中的IP参数是否在第一网关IP白名单表上,如果是,则通过第五验证,如果不是,则第五验证失败。第五验证失败生成的鉴权不通信息包含“来源IP未被授权访问”这一原因。
S6:根据第一网关method白名单表,对业务请求参数进行第六验证;若第六验证失败,则生成鉴权不通过信息;若第六验证通过,则执行S7。
在本实施例中,第六验证为判断业务请求参数中的method参数是否在第一网关method白名单表上;如果是,则通过第六验证,如果不是,则第六验证失败。第六验证失败生成的鉴权不通信息包含“method请求未被授权访问”这一原因。
S7:在用户的登录鉴权通过后,解密业务请求参数中的biz_content参数,获得相应的业务数据。
在本实施例中,用户的登录鉴权具体为:业务请求参数中包括auth_token参数,根据auth_token参数调用用户基本数据,判断是否能够获取用户基本数据。如果是,则说明用户登录鉴权通过,如果否,则说明非法登录,反馈用户auth_token验证失败这一消息。
在本实施例中,业务参数biz_content加密规则:字符集为utf8、密码为256bits[appSecret]、随机数为16bytes[appIv]、模式为GCM、填充为ZeroPadding、编码为Base64。
S8:根据第一网关客户白名单表,对业务请求参数进行第七验证;若第七验证失败,则生成鉴权不通过信息;若第七验证通过,则确定业务请求参数通过本次网关鉴权。
在本实施例中,第七验证为判断业务请求参数中的CUST_VERIFY参数是否为Y,如果是,则进一步判断cust_id是否在第一网关客户白名单表上;如果是,则通过第六验证,如果不是,则第六验证失败。第六验证失败生成的鉴权不通信息包含“不允许代xx(cust_id)发起业务请求”这一原因。如果一开始判定CUST_VERIFY参数不为Y,则直接通过第六验证。
在本实施例中,数据流向具体为外部系统每次发起请求(加密后的业务数据)→互联网→防火墙→NGINX服务→网关服务(本发明技术方案)→业务系统服务(解密后的业务数据)。业务数据在到达网关前,采用AES对称加密,使用:com.alibaba.fastjson.JSON.toJSONString(contentJSONPropertyFilter)将业务参数json转化为字符串后按上述规则进行AES加密,保证数据安全。
步骤105:如果业务请求参数的网关鉴权不通过,向业务系统反馈相应的不通过信息;如果业务请求参数的网关鉴权通过,则根据预设的转发规则,将在网关鉴权过程中获得的业务数据,转发给对应的业务服务端。
在本实施例中,步骤105具体为:根据第一转发规则,将解密业务请求参数中的biz_content参数后获得的业务数据,转发给对应的业务服务端。
由上可见,本发明技术方案具有以下优点:
1)业务参数加密能有效防止数据在传输环节(下游合作伙伴应用服务器至集成网关的HTTP之间)泄露,保证数据安全。
2)接口参数签名加防止请求数据被串改,保证业务系统收到数据与请求数据一致。
3)通道Url(partnerUrl)的独立性配置可对各通道的流量进行日常监控,异常流量能快速识别出来自那个通道,从而对通道进行流量控制。
4)通道状态可用于临时停用某个异常通道,而无需找运维人员在防火墙或NG操作,以便于运营人员能快速处理异常通道。
5)通道method白名单配置可以有效控制某类客户端或下游合作伙伴只能访问他们需要的业务接口。
6)通道IP白名单配置可以防止交互密钥信息丢失造成的伪造交易请求被业务系统受理而造成经济损失。
7)通道客户白名单配置为可选项,通过网关custVerify参数来决定网关是否需要验证请求接口业务参数客户id(cust_id)能否为此客户发起交易。
8)通道转发规则(forwardingRule)可灵活配置某个method请求(业务接口类型)在网关完成验证后,由网关将请求转发给那个业务系统服务处理,避免硬编码,降低耦合度,提高内聚。
9)业务系统服务仅引入网关JAR包,即可实现HTTP接口访问鉴权、数据解密等工作,而无需重复编码。业务系统开发、测试人员只需关注业务逻辑自身的实现,降低人力物力成本。
10)自有客户端与API外放模式的接口文档,在网关强制约束下标准化、规范化。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (3)

1.一种基于API的网关控制方法,其特征在于,包括:
根据预设的网关数据模型将各网关配置成JAR包,并为各网关配置数据库连接信息和redis服务器信息;其中,所述网关数据模型内设置有网关配置表、网关method白名单表、网关IP白名单表和网关客户白名单表;
获取业务系统发起的业务数据请求,其中所述业务数据请求包括本次请求对象和业务请求参数;
根据所述请求对象,调用各网关的JAR包,获取第一网关对应的第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表;具体步骤为:
根据所述请求对象,确定需调用的网关为第一网关,并调用所述第一网关对应的第一JAR包,获取第一网关配置表、第一网关method白名单表、第一网关IP白名单表和第一网关客户白名单表;
将所述第一网关method白名单表、第一网关IP白名单表、第一网关客户白名单表、以及所述第一网关配置表中的第一URL地址、第一合法性验证密钥、第一转发规则和第一网关状态以json格式存储到value中;
根据所述第一网关配置表、所述第一网关method白名单表、所述第一网关IP白名单表和所述第一网关客户白名单表,对所述业务请求参数进行网关鉴权;
如果所述业务请求参数的网关鉴权不通过,向所述业务系统反馈相应的不通过信息;如果所述业务请求参数的网关鉴权通过,则根据预设的转发规则,将在网关鉴权过程中获得的业务数据,转发给对应的业务服务端;
所述网关配置表用于记录各客户端的网关参数,所述网关参数包括URL地址、合法性验证密钥、转发规则和网关状态;
所述网关method白名单表用于记录允许授权的method参数;
所述网关IP白名单表用于记录允许授权的IP;
所述网关客户白名单表用于记录允许授权的客户ID。
2.根据权利要求1所述的基于API的网关控制方法,其特征在于,所述根据所述第一网关配置表、所述第一网关method白名单表、所述第一网关IP白名单表和所述第一网关客户白名单表,对所述业务请求参数进行网关鉴权,具体为:
根据所述第一合法性验证密钥,对所述业务请求参数的合法性进行第一验证;若第一验证失败,则生成鉴权不通过信息;
若第一验证通过,则对所述业务请求参数进行签名,并对签名后的参数进行第二验证;若第二验证失败,则生成鉴权不通过信息;
若第二验证通过,则根据第一URL地址,对业务请求参数中的URL地址进行第三验证;若第三验证失败,则生成鉴权不通过信息;
若第三验证通过,则根据所述第一网关状态,对所述业务请求参数进行第四验证;若第四验证失败,则生成鉴权不通过信息;
若第四验证通过,则根据所述第一网关IP白名单表,对所述业务请求参数进行第五验证;若第五验证失败,则生成鉴权不通过信息;
若第五验证通过,则根据所述第一网关method白名单表,对所述业务请求参数进行第六验证;若第六验证失败,则生成鉴权不通过信息;
若第六验证通过,则在用户的登录鉴权通过后,解密所述业务请求参数中的biz_content参数,获得相应的业务数据;
根据所述第一网关客户白名单表,对所述业务请求参数进行第七验证;若第七验证失败,则生成鉴权不通过信息;
若第七验证通过,则确定所述业务请求参数通过本次网关鉴权。
3.根据权利要求2所述的基于API的网关控制方法,其特征在于,所述如果所述业务请求参数的网关鉴权通过,则根据预设的转发规则,将在网关鉴权过程中获得的业务数据,转发给对应的业务服务端,具体为:
根据所述第一转发规则,将解密所述业务请求参数中的biz_content参数后获得的业务数据,转发给对应的业务服务端。
CN202011172097.6A 2020-10-28 2020-10-28 一种基于api的网关控制方法 Active CN112351015B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011172097.6A CN112351015B (zh) 2020-10-28 2020-10-28 一种基于api的网关控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011172097.6A CN112351015B (zh) 2020-10-28 2020-10-28 一种基于api的网关控制方法

Publications (2)

Publication Number Publication Date
CN112351015A CN112351015A (zh) 2021-02-09
CN112351015B true CN112351015B (zh) 2023-03-14

Family

ID=74358994

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011172097.6A Active CN112351015B (zh) 2020-10-28 2020-10-28 一种基于api的网关控制方法

Country Status (1)

Country Link
CN (1) CN112351015B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113065161A (zh) * 2021-04-21 2021-07-02 湖南快乐阳光互动娱乐传媒有限公司 针对Redis数据库的安全控制方法及装置
CN113395269B (zh) * 2021-06-04 2023-02-17 上海浦东发展银行股份有限公司 一种数据交互方法、装置
CN113422686B (zh) * 2021-06-24 2022-09-27 平安国际智慧城市科技股份有限公司 网关层鉴权方法、系统、电子设备及存储介质
CN113438317B (zh) * 2021-07-08 2022-08-05 数字广东网络建设有限公司 一种网关数据处理的方法及装置
CN113765701B (zh) * 2021-08-02 2024-02-20 中企云链(北京)金融信息服务有限公司 一种基于永久内存缓存的网关控制方法
CN114417336B (zh) * 2022-01-24 2022-11-01 北京新桥信通科技股份有限公司 一种应用系统侧安全管控方法及系统
CN114826612B (zh) * 2022-04-20 2024-01-30 微位(深圳)网络科技有限公司 数据交互方法、装置、设备及存储介质
CN115174142B (zh) * 2022-05-27 2024-01-12 深圳市世强元件网络有限公司 一种网关统一认证管理方法、装置、存储介质和计算机
CN115549966B (zh) * 2022-08-25 2024-07-16 支付宝(杭州)信息技术有限公司 业务请求的安全审计方法和装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108259432A (zh) * 2016-12-29 2018-07-06 亿阳安全技术有限公司 一种api调用的管理方法、设备及系统
CN108901022A (zh) * 2018-06-28 2018-11-27 深圳云之家网络有限公司 一种微服务统一鉴权方法及网关
CN111386676A (zh) * 2018-03-21 2020-07-07 华为技术有限公司 应用编程接口api网关集群的控制方法和api网关集群
CN111818035A (zh) * 2020-07-01 2020-10-23 上海悦易网络信息技术有限公司 一种基于api网关的权限验证的方法及设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10581800B2 (en) * 2017-07-25 2020-03-03 Ca, Inc. Protecting computer servers from API attacks using coordinated varying of URL addresses in API requests

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108259432A (zh) * 2016-12-29 2018-07-06 亿阳安全技术有限公司 一种api调用的管理方法、设备及系统
CN111386676A (zh) * 2018-03-21 2020-07-07 华为技术有限公司 应用编程接口api网关集群的控制方法和api网关集群
CN108901022A (zh) * 2018-06-28 2018-11-27 深圳云之家网络有限公司 一种微服务统一鉴权方法及网关
CN111818035A (zh) * 2020-07-01 2020-10-23 上海悦易网络信息技术有限公司 一种基于api网关的权限验证的方法及设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
开放API网关实践(一) —— 设计一个开放API网关;草堂笺;《https://blog.csdn.net/piaoruiqing/article/details/98664815》;20190826;全文 *
自建API网关-架构设计篇;无尽的星空;《https://blog.csdn.net/wayne_sulong/article/details/79423861》;20180328;第1-8页 *

Also Published As

Publication number Publication date
CN112351015A (zh) 2021-02-09

Similar Documents

Publication Publication Date Title
CN112351015B (zh) 一种基于api的网关控制方法
US12051075B2 (en) Systems and methods for providing notifications to devices
US11250142B1 (en) System and method for protecting data in business transactions
US11232496B2 (en) System and method for providing limited access to data
US20080098457A1 (en) Identity controlled data center
CN107122674A (zh) 一种应用于运维审计系统的oracle数据库的访问方法
US20030135734A1 (en) Secure mutual authentication system
US11711349B2 (en) Methods and systems for secure cross-platform token exchange
US8402520B1 (en) Authentication protocol for network security services
CN102209046A (zh) 网络资源整合系统及方法
JP2012519995A (ja) ネットワーク通信を保護する方法および装置
CN108777673B (zh) 一种在区块链中进行双向身份认证方法
CN111709752A (zh) 虚拟资源处理方法、装置、计算机可读介质及电子设备
CN104463584A (zh) 实现移动端App安全支付的方法
WO2023021572A1 (ja) データ処理システム、データ処理方法及びデータ処理装置
CN113746916A (zh) 基于区块链的第三方服务提供方法、系统及相关节点
US20050102526A1 (en) System governing the sending and delivery of electronic mail using an eMstamp
WO2024098550A1 (zh) 数据中用户标识的加解密方法、系统及设备
US12062041B1 (en) Extensible electronic payment schema
CN117113392A (zh) 隐私数据处理方法、装置、计算机设备及存储介质
US20230259925A1 (en) System and Method for Conducting Payment and Business Transactions
CN111935164B (zh) 一种https接口请求方法
US9172679B1 (en) Secure intermediation system and method
CN105681292B (zh) 一种利用安全键盘进行网络交易的办法
CN110166452A (zh) 一种基于JavaCard共享接口的访问控制方法及系统

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