CN114650216A - 安全防护方法及装置 - Google Patents

安全防护方法及装置 Download PDF

Info

Publication number
CN114650216A
CN114650216A CN202210287969.6A CN202210287969A CN114650216A CN 114650216 A CN114650216 A CN 114650216A CN 202210287969 A CN202210287969 A CN 202210287969A CN 114650216 A CN114650216 A CN 114650216A
Authority
CN
China
Prior art keywords
disaster recovery
target
determining
flow
current
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
Application number
CN202210287969.6A
Other languages
English (en)
Other versions
CN114650216B (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.)
Alibaba Cloud Computing Ltd
Original Assignee
Alibaba Cloud Computing 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 Alibaba Cloud Computing Ltd filed Critical Alibaba Cloud Computing Ltd
Priority to CN202210287969.6A priority Critical patent/CN114650216B/zh
Publication of CN114650216A publication Critical patent/CN114650216A/zh
Application granted granted Critical
Publication of CN114650216B publication Critical patent/CN114650216B/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请实施例提供安全防护方法及装置,其方法包括:确定容灾信息,所述容灾信息用于表示当前灾备机房支持容灾的业务功能;获取访问当前灾备机房的应用流量,并根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量;将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务。解决了无法有效地降低容灾切换的复杂度以及减少容灾切换风险的问题。

Description

安全防护方法及装置
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种安全防护方法及装置。
背景技术
金融行业是对生产安全要求较高的行业之一,其中核心系统,比如手机银行应用程序(Application,APP)的业务容灾演练,是金融行业的一项重要技术活动。
其中,以手机银行APP容灾演练为例,常常涉及到多部门和几十人参加在同一个较长时间段的保障,导致客户侧手机银行开发部门承担非常多的沟通准备工作和技术风险,进而导致关联系统复杂、业务切换风险高、变更窗口期超长。
因此,现有技术中,无法有效地降低容灾切换的复杂度以及减少容灾切换风险。
发明内容
本申请实施例提供一种安全防护方法及装置,以解决无法有效地降低容灾切换的复杂度以及减少容灾切换风险的问题。
第一方面,本申请实施例提供一种安全防护方法,所述方法包括:
确定容灾信息,所述容灾信息用于表示当前灾备机房支持容灾的业务功能;
获取访问当前灾备机房的应用流量,并根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量;
将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务。
可选的,所述多层级防护策略包括域名级防护、端口级或统一资源定位符URL级防护、接口级防护;
所述根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量,包括:
根据所述容灾信息,确定当前灾备机房支持容灾的目标域名、目标端口或URL、以及目标接口;
根据所述目标域名,通过域名级防护,从所述应用流量中确定切换到所述当前灾备机房的第一流量;
根据所述目标端口或目标URL,通过端口级或URL级防护,从所述第一流量中确定待切换到所述当前灾备机房的第二流量;
根据所述目标接口,通过所述接口级防护,从所述第二流量中确定待切换到所述当前灾备机房的第三流量;其中,所述第三流量为容灾流量。
可选的,所述根据所述容灾信息,确定当前灾备机房支持容灾的目标域名、目标端口或目标URL、以及目标接口,包括:
根据支持容灾的所述业务功能,确定部署有所述业务功能的目标应用程序;
分析所述目标应用程序的配置,确定所述目标应用程序的域名,并将所述目标应用程序的域名作为所述目标域名;
根据所述目标应用程序上部署的系统以及所述业务功能,确定所述业务功能所属系统对应的访问端口或URL以及所述业务功能对应的服务接口;
将所述访问端口作为所述目标端口或目标URL,将所述服务接口作为所述目标接口。
可选的,所述根据所述目标域名,通过域名级防护,从所述应用流量中确定待切换到所述当前灾备机房的第一流量,包括:
确定使用所述应用流量的各个应用程序客户端,并根据各个所述应用程序客户端的配置信息,确定各个所述应用程序客户端访问所述当前灾备机房使用的互联网域名;
将各个所述应用程序客户端对应的所述互联网域名与所述目标域名进行比对,确定参与容灾操作的目标应用程序;
将目标应用程序客户端使用的应用流量作为所述第一流量。
可选的,所述根据所述目标端口或目标URL,通过端口级或URL级防护,从所述第一流量中确定待切换到所述当前灾备机房的第二流量,包括:
确定所述第一流量对应的代理服务器监听的端口或URL;
将所述目标端口或目标URL与所述第一流量对应的代理服务器监听的端口或URL进行比对,从所述代理服务器中确定监听所述目标端口或目标URL的目标代理服务器;
从所述第一流量中确定由所述目标代理服务器识别的流量为第二流量。
可选的,所述根据所述目标接口,通过所述接口级防护,从所述第二流量中确定待切换到所述当前灾备机房的第三流量,包括:
将所述目标接口作为具备容灾能力的接口;
从所述第二流量中,确定具备容灾能力的接口的第三流量。
可选的,所述确定容灾信息,包括:
获取当前灾备机房的部署信息;
根据所述当前灾备机房的部署信息中支持容灾的业务功能,确定所述容灾信息。
可选的,所述方法还包括:
通过所述多层级防护策略,确定拒绝访问当前灾备机房的目标流量;
将所述目标流量在相应的多层级防护策略的防护点进行拒绝,并向使用所述目标流量的应用程序客户端返回预设的错误码。
可选的,所述将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务,包括:
将所述容灾流量转发到所述当前灾备机房的内网中,以使所述当前灾备机房对所述容灾流量进行处理;
当处理的结果无异常,则确定所述当前灾备机房具备提供所述容灾服务的能力。
第二方面,本申请实施例提供一种安全防护装置,所述装置包括:
确定模块,用于确定容灾信息,所述容灾信息用于表示当前灾备机房支持容灾的业务功能;
防护模块,用于获取访问当前灾备机房的应用流量,并根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量;
处理模块,用于将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务。
本申请实施例提供的安全防护方法及装置,该方法首先确定当前灾备机房支持容灾的业务功能的容灾信息,以及获取访问当前灾备机房的应用流量,然后通过多层级防护策略,对应用流量进行筛选,确定允许访问当前灾备机房的容灾流量,即对于客户端访问灾备机房具备的业务功能,将容灾流量切换至灾备机房,在灾备机房上实现服务,对于客户端访问灾备机房不具备的业务功能,在防护点拒绝流量,实现了流量的精准防护,来控制容灾演练范围,减少容灾切换风险和整体切换时间,进而降低了容灾切换的复杂度,同时防止产生脏数据且保障用户体验统一,进而提升用户的满意度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的安全防护方法的场景示意图;
图2为本申请实施例提供的安全防护方法的流程示意图;
图3为本申请实施例提供的安全防护装置的结构示意图;
图4为本申请实施例提供的电子设备的硬件结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例还能够包括除了图示或描述的那些实例以外的其他顺序实例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
目前,以手机银行APP容灾演练为例,常常涉及到多部门和几十人参加在同一个较长时间段的保障,导致客户侧手机银行开发部门承担非常多的沟通准备工作和技术风险,进而导致关联系统复杂、业务切换风险高、变更窗口期超长。因此,现有技术中,无法有效地降低容灾切换的复杂度以及减少容灾切换风险。
为了解决上述问题,本申请的发明构思为:采取分层防护体系(即多层级防护策略),分别从域名级、端口级或统一资源定位符(Uniform Resource Locator,URL)级、API接口级进行三层防护,对于客户端访问灾备机房不具备的业务功能,在防护点拒绝流量,并返回特定的错误码;对于客户端访问灾备机房具备的业务功能,将其流量切换到灾备机房,可以在灾备机房获得正常响应。实现了流量的精准防护,来控制容灾演练范围,减少容灾切换风险和整体切换时间,进而降低了容灾切换的复杂度,同时防止产生脏数据且保障用户体验统一,进而提升用户的满意度。
下面以具体实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图1为本申请实施例提供的安全防护方法的场景示意图,以金融项目常见的5类手机APP为例(即手机银行、企业银行、某商城、某分行APP、办公APP),且在手机银行APP为容灾演练场景,在该场景中,以下步骤可实现应用流量的精准防护效果:通过三级防护体系(即多层级防护策略,比如域名级防护、端口级/URL级防护、接口级防护)对客户端访问灾备机房的应用流量实现精准防护。因此,结合图1所示,通过互联网接入层实现域名级防护,DMZ隔离区代理层实现端口级/URL级防护,API网关层实现接口级防护。
结合图1所示,域名级防护:通过不同APP客户端配置文件配置不同的公网域名,在运营上的域名系统(Domain Name System,DNS)上进行流量调度和防护。端口级/URL级防护:通过隔离区(Demilitarized Zone,DMZ)的一个高性能的HTTP和反向代理web服务器(即NGINX(或nginx)代理服务器),区分不同的端口和URL,进行流量调度和防护。接口级防护:通过应用程序接口(Application Programming Interface,API)网关产品,区分不同的API接口,进行流量调度和防护。
其中,容灾(演练)应用在规划期可以规划要实现容灾切换能力的目标APP清单,比如包括手机银行APP等,基于规划内容对容灾切换能力进行建设配置,通过一系列的技术和管理动作,让目标APP具备理论上容灾切换的能力,并在验收期或是校验阶段,比如,触发容灾场景,通过一系列的变更操作,验证目标APP实际上已具备容灾切换和容灾回切的能力。
具体地,以手机银行APP参与容灾切换的容灾场景为例,当各类手机APP在各自对应的运营商提供的网络环境下,使用流量访问灾备机房的服务端时,通过运营商对各类手机APP进行域名解析,将手机银行APP的域名对应的流量分配至灾备机房,比如B机房。此时灾备机房的部署能力可能还不完善,比如当前灾备机房可能只支持手机银行APP中部分系统或部分功能实现。其中,B机房部署关键系统,受限于:1.项目预算不足;2.服务器资源不足;3.业务优先级不是最高的;4.当前工期赶不上预期容灾演练计划;5.技术复杂度过高),将其他手机APP的域名对应的流量返回至原机房,比如A机房。再通过端口级/URL级防护,通过DMZ区的nginx代理服务器,区分不同的端口和URL,进行流量调度,进而实现防护。再通过接口级防护,通过API网关产品(比如A网关、B网关、C网关等),区分不同的API接口,进行流量调度,进而实现业务接口级容灾。其中,业务接口级容灾:针对手机APP,实现对特定业务接口的容灾流量调度。
结合图1所示,A机房为激活的机房(即正常使用或已经完善的机房,在容灾切换之前,为各类手机APP提供服务的机房),A机房中的云内业务系统以及云外业务系统较B机房的云内业务系统以及云外系统多,这是因为B机房基于受限条件当前部署了部分云内业务系统。这里的云外业务系统可以包括短信系统等历史固有业务系统,在此不再一一列举,并且不做具体限定。
在容灾场景中,按照分层管理的方式,精准指定业务APP(比如手机银行APP)的指定业务功能,可在灾备机房获得正常响应。其他业务APP(比如企业银行、某商城、某分行APP、办公APP等)和其他功能,进行容灾流量防护(这里的容灾流量防护:容灾场景下,灾备中心(比如灾备机房)只正常处理特定功能的流量,其他功能进行拒绝并返回统一错误码,保障用户体验统一且防止产生脏数据),对用户实现用户界面的友好提示和防止误操作产生脏数据。能够精准控制切换范围,降低容灾切换的复杂度,进而减少了整体切换时间,同时减少容灾切换风险。
图2为本申请实施例提供的安全防护方法的流程示意图,本实施例的方法可以由服务器执行。如图2所示,本实施例的方法,可以包括:
S201:确定容灾信息。其中,所述容灾信息用于表示当前灾备机房支持容灾的业务功能。
本实施例中,容灾信息的确定是基于当前灾备机房的部署能力确定的。当前灾备机房可以是正在建设中也可以是已经完善建设的,在此不做具体限定,需要基当前于触发容灾场景的时间来获取该时间上灾备机房的部署能力,进而确定当前灾备机房能够支持的服务,比如业务功能。
S202:获取访问当前灾备机房的应用流量,并根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量。
本实施例中,当容灾场景被触发时,获取各个应用程序客户端访问当前灾备机房时的应用流量。这里的各个应用程序可以包括多个类型,参见图1所示。
其中,为了对访问的应用流量实现精准防护,可以通过分层防护即使用多层级防护策略,比如域名级防护、端口级/URL级防护以及接口级防护,从应用流量中确定能够分配到或切换到灾备机房的容灾流量,同时拒绝其他流量在灾备机房的访问,将其他流量配置在原机房(或激活机房)上实现服务。
S203:将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务。
本实施例中,针对应用流量的防护是基于流量可识别、流量可拆分以及流量可管理实现的。具体地,基于各层级识别流量,确定允许访问的流量以及拒绝的流量,并基于各层级拆分流量,在流量汇聚点进行拆分,再基于各层级管理流量,将容灾流量在各层级上切换至灾备机房,将拒绝的流量返回分配至原机房。
本申请提供的安全防护方法,通过确定当前灾备机房支持容灾的业务功能的容灾信息,以及获取访问当前灾备机房的应用流量,然后通过多层级防护策略,对应用流量进行筛选,确定允许访问当前灾备机房的容灾流量,即对于客户端访问灾备机房具备的业务功能,将容灾流量切换至灾备机房,在灾备机房上实现服务,对于客户端访问灾备机房不具备的业务功能,在防护点拒绝流量,实现了流量的精准防护,来控制容灾演练范围,减少容灾切换风险和整体切换时间,进而降低了容灾切换的复杂度,同时防止产生脏数据且保障用户体验统一,进而提升用户的满意度。
下述均以手机银行容灾场景为例,通过下述实施例进行安全防护的详细说明。
可选的,所述多层级防护策略包括域名级防护、端口级或统一资源定位符URL级防护、接口级防护;根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量,可以通过以下步骤实现:
步骤a1、根据所述容灾信息,确定当前灾备机房支持容灾的目标域名、目标端口或目标URL、以及目标接口。
本实施例中,确定容灾单元、关联系统中哪些容灾,哪些暂不做容灾。关键判断依据为:在容灾能力建设的工期内,灾备机房是否满足手机银行上下系统的依赖。
可选的,根据所述容灾信息,确定当前灾备机房支持容灾的目标域名、目标端口或目标URL、以及目标接口,可以通过以下步骤实现:
步骤b1、根据支持容灾的所述业务功能,确定部署有所述业务功能的目标应用程序。
步骤b2、分析所述目标应用程序的配置,确定所述目标应用程序的域名,并将所述目标应用程序的域名作为所述目标域名。
步骤b3、根据所述目标应用程序上部署的系统以及所述业务功能,确定所述业务功能所属系统对应的访问端口或URL以及所述业务功能对应的服务接口。
步骤b4、将所述访问端口作为所述目标端口或目标URL,将所述服务接口作为所述目标接口。
本实施例中,明确容灾单元,即哪些APP需要做容灾,哪些APP不需要做容灾(确定目标APP以及对应的目标域名),分别确定每个APP的名字。具体地,在容灾项目施工期即容灾能力部署阶段,可以确定每个APP使用了什么互联网域名来访问服务端;其中,可以通过人工方式,检查每个APP客户端程序中的配置信息确定互联网域名(或域名)。因此,在容灾场景触发后,可以通过解析得到APP配置中的域名,并通过域名级防护,实现流量的调用和防护。
在容灾能力部署阶段,可以明确代理服务器的登陆信息(基于登录信息可以确定该代理服务器监听的目标端口、目标URL)。分别梳理生产机房(即原机房或激活机房,比如A机房)和容灾机房(即灾备机房,比如B机房)的代理服务器的IP地址、账号/的密码的信息(这里的账号/的密码的信息可以是经过脱敏处理的)。还可以明确每个APP使用了什么代理服务器及其监听端口和URL。其中,可以通过人工方式,检查每个代理服务器上的配置文件,检查每个APP监听的端口和URL。因此,在容灾场景触发后,可以通过识别流量,确定每个APP监听的端口和URL,并通过端口级和URL级防护,实现流量的调度和防护。
在容灾能力部署阶段,可以明确接口的功能。针对容灾机房提供服务的容灾单元(可以确定容灾机房提供服务的目标接口),分析每个APP的接口,确认该接口的完整功能是否在容灾机房已经具备服务条件,并输出清单。因此,在容灾场景触发后,可以通过识别流量,确定每个APP的接口,并通过接口级防护,实现流量的调度和防护。
步骤a2、根据所述目标域名,通过域名级防护,从所述应用流量中确定切换到所述当前灾备机房的第一流量。
步骤a3、根据所述目标端口或目标URL,通过端口级或URL级防护,从所述第一流量中确定待切换到所述当前灾备机房的第二流量。
步骤a4、根据所述目标接口,通过所述接口级防护,从所述第二流量中确定待切换到所述当前灾备机房的第三流量;其中,所述第三流量为容灾流量。
可选的,本实施例在上述实施例的基础上,对安全防护方法进行了详细说明。所述方法还可以通过以下步骤实现:
步骤c1、通过所述多层级防护策略,确定拒绝访问当前灾备机房的目标流量;
步骤c2、将所述目标流量在相应的多层级防护策略的防护点进行拒绝,并向使用所述目标流量的应用程序客户端返回预设的错误码。
本实施例中,通过识别流量、拆分流量以及流量管理实现容灾切换。具体地,针对识别流量:获取所有手机APP客户端的应用流量,识别它们访问云平台入口的方法,包括域名清单/IP清单;并分析APP的配置,识别多APP共用域名,确定域名切换影响的业务范围。获取所有手机APP在DMZ区nginx代理的部署清单,并分析nginx配置,识别多APP共用端口和后端URL的清单,确定nginx切换影响的业务范围。获取所有手机APP在各类网关注册的API接口,并分析API的功能,识别各API在灾备机房是否能正常服务。
针对拆分流量:域名防护阶段,确定或获取互联网流量的分流到生产机房和灾备机房的汇聚点。目前,所有金融行业项目都会通过运营商的DNS系统来进行分流。对于多APP共用的域名,可以进行域名拆分;如短期内无法拆分域名,在下一个环节(比如端口/URL)进行防护,以手机银行APP为例,如果和其他APP共用了域名,拆分域名涉及到发布新版APP,用户更新APP的环节均难以控制完成时间,因此,可以在端口级/URL级进行防护。端口级/URL级防护阶段,确定或获取用户侧的机房入口处(全局负载均衡,Global Server LoadBalance,GSLB)的流量汇聚点。目前,所有金融行业项目有2种方式:(a)单机房流量入口并用户内部跨机房转发,按照业务维度拆分出不同端口;(b)双机房流量入口,并在运营商DNS侧进行分流。拆分nginx代理服务器,确保各业务系统实时交易业务使用独立的代理服务器或端口,确保nginx可区分,可按照端口/URL进行流量防护。针对流量管理:域名级流量管理,通过调整运营商DNS系统,切换容灾APP的流量,从互联网层分发至灾备机房。端口级/URL级流量管理,通过DMZ区nginx监控不同业务系统的端口和URL,切换容灾APP的流量,从机房接入层,跨机房转发至灾备机房。
以两个场景为例:场景1、在互联网层期望调度至灾备机房的流量,却因运营商DNS缓存更新延迟(数分钟至数小时不等),跑到了故障机房的流量,可在DMZ nginx上纠偏,重新调度至灾备机房。场景2、手机APP拆分域名,涉及发布版本、上架、推广、用户更新一系列难以控制的环节,因此较长一段时间存在新旧域名共存的问题。当多个APP共用一个域名,只有部分APP做了容灾建设,就无法在互联网层切换域名。同样在DMZ nginx上纠偏,正确调度指定容灾系统的流量至灾备机房。
接口级流量管理,通过网关层(A网关/B网关/C网关)对放行特定的API,拒绝特定的API并返回特定的错误码,实现流量控制。以手机银行为例,同一个端口或URL入口下,后端还关联着多个API,每个API又对应一个下游其他部门的系统。由于财务预算、资源容灾、技术复杂度等综合因素,下游系统存在无异地容灾的能力,可通过API网关进行精准控制。
可选的,根据所述目标域名,通过域名级防护,从所述应用流量中确定待切换到所述当前灾备机房的第一流量,可以通过以下步骤实现:
步骤d1、确定使用所述应用流量的各个应用程序客户端,并根据各个所述应用程序客户端的配置信息,确定各个所述应用程序客户端访问所述当前灾备机房使用的互联网域名;
步骤d2、将各个所述应用程序客户端对应的所述互联网域名与所述目标域名进行比对,确定参与容灾操作的目标应用程序;
步骤d3、将目标应用程序客户端使用的应用流量作为所述第一流量。
本实施例中,在配置阶段,可以分析确定互联网域名重合情况。通过统计信息(比如,每个APP客户端程序中的配置信息确定互联网域名),对比分析是否存在两个或多个APP使用了相同的互联网域名;若涉及互联网域名重合,申请新的互联网域名,确保每个APP有独立的域名;在运营商的域名系统中,注册新的互联网域名;发布新版本的APP,对于使用新的互联网域名的APP,通过发行渠道,发布新的版本供用户下载和安装。因此,保证每个APP对应有唯一一个域名,这样在容灾场景中,可以用过流量识别并分析APP配置,可以解析得到每个APP的域名并确定该APP是否需要做容灾。
具体地,在容灾场景(或容灾演练场景)下,实现管理互联区流量分配至容灾机房;在容灾演练的时间段内,通过修改运营商的域名系统DNS上,将容灾单元的流量(这里可以指第一流量),分配至容灾机房。实现管理互联区流量分配至生产机房;在容灾演练的时间段内,通过修改运营商的域名系统DNS上,将容灾单元的流量,恢复至生产机房。
可选的,根据所述目标端口或目标URL,通过所述端口级或URL级防护,从所述第一流量中确定待切换到所述当前灾备机房的第二流量,可以通过以下步骤实现:
步骤e1、确定所述第一流量对应的代理服务器监听的端口或URL;
步骤e2、将所述目标端口或目标URL与所述第一流量对应的代理服务器监听的端口或URL进行比对,从所述代理服务器中确定监听所述目标端口或目标URL的目标代理服务器;
步骤e3、从所述第一流量中确定由所述目标代理服务器识别的流量为第二流量。
本实施例中,在配置阶段,可以分析确定代理服务器或端口或URL重合情况。通过统计信息(比如,每个代理服务器上的配置文件、每个APP监听的端口和URL),对比分析是否存在两个或多个APP共用了端口或URL;若涉及代理服务器重合,申请新的代理服务器,并部署代理软件nginx;若涉及端口重合,申请新的端口,确保每个APP有独立的端口;若涉及URL重合,通过申请新的代理服务器和新的端口来解决,无需拆分URL。
具体地,在容灾场景(或容灾演练场景)下,实现代理区流量纠偏。在容灾演练的时间段内,若“域名级防护”由于各种原因,未能完成流量拆分,容灾单元的流量无法通过域名级防护方式进行切换至容灾机房,容灾单元的流量仍然进入了生产机房。代理服务器监听所有的端口和URL,能够识别出哪些端口和URL的流量是应该切换至容灾机房的。通过上述已经完成拆分的代理服务器和端口,将容灾单元的流量(这里可以指第二流量),在代理区完成切换至容灾机房。
实现代理区流量恢复。在容灾演练的时间段内,通过上述已经完成拆分的代理服务器和端口,将容灾单元的流量,在代理区完成恢复至生产机房。
可选的,根据所述目标接口,通过所述接口级防护,从所述第二流量中确定待切换到所述当前灾备机房的第三流量,可以通过以下步骤实现:
步骤f1、将所述目标接口作为具备容灾能力的接口;
步骤f2、从所述第二流量中,确定具备容灾能力的接口的第三流量。
本实施例中,在配置阶段,可以评估接口的成熟度:当1个接口提供了多个功能,而容灾机房当前只能满足该接口的部分功能时,需要将该接口拆分为多个接口。拆分的粒度按照容灾和不容灾的能力进行划分。拆分接口:将不满足容灾能力的接口,单独拆分出来,创建新的接口并注册到API网关产品上。新的接口需要确保被容灾单元识别和使用,因此拆分后的接口需通过发行渠道,发布新的版本供用户下载和安装,这样保证在容灾场景下可以通过流量识别,识别接口是否需要容灾。
可选的,所述将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务,可以通过以下步骤实现:
步骤g1、将所述容灾流量转发到所述当前灾备机房的内网中,以使所述当前灾备机房对所述容灾流量进行处理。
步骤g2、当处理的结果无异常,则确定所述当前灾备机房具备提供所述容灾服务的能力。
具体地,在容灾场景(或容灾演练场景)下,实现拦截不具备容灾能力的接口的流量。在容灾演练的时间段内,当互联网区的域名级流量和代理区的端口/URL流量已经切换到容灾机房的内网后,通过API网关产品,对不具备容灾能力的接口,设置特定的错误码并直接返回给用户的手机的APP上。对于容灾能力的接口,则正常将流量(这里可以指第三流量)转发到后端的服务器(容灾机房)进行处理。
实现恢复所有的接口的流量:在容灾演练的时间段内,当互联网区的域名级流量和代理区的端口/URL流量已经恢复到生产机房的内网后,将拦截的接口,取消其拦截的效果,正常将流量转发到后端的服务器进行处理,实现容灾回切效果。可选的,确定容灾信息,可以通过以下步骤实现:
步骤h1、获取当前灾备机房的部署信息;
步骤h2、根据所述当前灾备机房的部署信息中支持容灾的业务功能,确定所述容灾信息。
本实施例中,在配置阶段通过部署灾备机房,可以确定灾备机房支持的具备容灾切换能力的业务功能,因此,在容灾场景下,通过获取到的部署信息,可以从部署信息中获取当前灾备机房所支持容灾的业务功能,进而将该业务功能作为容灾信息,提供防护数据。
示例性的,通过金融行业多个手机APP项目的实际调研,下表1列举本申请引入不同网关产品时,所表现出的工程能力和成本。
表1
Figure BDA0003559052900000111
结合表1可知,该方案以金融行业的手机银行APP+A网关产品为基础,具备较强的通用性,可复制于其他手机APP+其他网关产品(如B网关产品、C网关产品)。实现零新增采购本和零代码影响,满足容灾场景下的应用防护需求,在工程效果上能够有效减少容灾切换风险和降低交付周期。
本申请,能够实现精准控制切换范围,减少容灾切换风险和整体切换时间。同时,可以有效减少资源(比如设备和人员等)投入,提升用户满意度。
基于同样的思路,本申请实施例还提供了上述方法对应的装置,如图3所示,图3为本申请实施例提供的安全防护装置的结构示意图。安全防护装置可以包括:
确定模块301,用于确定容灾信息,所述容灾信息用于表示当前灾备机房支持容灾的业务功能;
防护模块302,用于获取访问当前灾备机房的应用流量,并根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量;
处理模块303,用于将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务。
本实施例中,通过设置确定模块301、防护模块302以及处理模块303,通过确定当前灾备机房支持容灾的业务功能的容灾信息,以及获取访问当前灾备机房的应用流量,然后通过多层级防护策略,对应用流量进行筛选,确定允许访问当前灾备机房的容灾流量,即对于客户端访问灾备机房具备的业务功能,将容灾流量切换至灾备机房,在灾备机房上实现服务,对于客户端访问灾备机房不具备的业务功能,在防护点拒绝流量,实现了流量的精准防护,来控制容灾演练范围,减少容灾切换风险和整体切换时间,进而降低了容灾切换的复杂度,同时防止产生脏数据且保障用户体验统一,进而提升用户的满意度。
可选的,所述多层级防护策略包括域名级防护、端口级或统一资源定位符URL级防护、接口级防护;防护模块302包括第一防护单元、第二防护单元、第三防护单元以及第四防护单元;
第一防护单元,用于根据所述容灾信息,确定当前灾备机房支持容灾的目标域名、目标端口或目标URL、以及目标接口;
第二防护单元,用于根据所述目标域名,通过域名级防护,从所述应用流量中确定切换到所述当前灾备机房的第一流量;
第三防护单元,用于根据所述目标端口或目标URL,通过端口级或URL级防护,从所述第一流量中确定待切换到所述当前灾备机房的第二流量;
第四防护单元,用于根据所述目标接口,通过所述接口级防护,从所述第二流量中确定待切换到所述当前灾备机房的第三流量;其中,所述第三流量为容灾流量。
可选的,第一防护单元,具体用于:
根据支持容灾的所述业务功能,确定部署有所述业务功能的目标应用程序;
分析所述目标应用程序的配置,确定所述目标应用程序的域名,并将所述目标应用程序的域名作为所述目标域名;
根据所述目标应用程序上部署的系统以及所述业务功能,确定所述业务功能所属系统对应的访问端口或URL以及所述业务功能对应的服务接口;
将所述访问端口作为所述目标端口或目标URL,将所述服务接口作为所述目标接口。
可选的,第二防护单元,具体用于:
确定使用所述应用流量的各个应用程序客户端,并根据各个所述应用程序客户端的配置信息,确定各个所述应用程序客户端访问所述当前灾备机房使用的互联网域名;
将各个所述应用程序客户端对应的所述互联网域名与所述目标域名进行比对,确定参与容灾操作的目标应用程序;
将目标应用程序客户端使用的应用流量作为所述第一流量。
可选的,第三防护单元,具体用于:
确定所述第一流量对应的代理服务器监听的端口或URL;
将所述目标端口或目标URL与所述第一流量对应的代理服务器监听的端口或URL进行比对,从所述代理服务器中确定监听所述目标端口或目标URL的目标代理服务器;
从所述第一流量中确定由所述目标代理服务器识别的流量为第二流量。
可选的,第四防护单元,具体用于:
将所述目标接口作为具备容灾能力的接口;
从所述第二流量中,确定具备容灾能力的接口的第三流量。
可选的,确定模块,具体用于:
获取当前灾备机房的部署信息;
根据所述当前灾备机房的部署信息中支持容灾的业务功能,确定所述容灾信息。
可选的,该防护模块,还用于:
通过所述多层级防护策略,确定拒绝访问当前灾备机房的目标流量;
将所述目标流量在相应的多层级防护策略的防护点进行拒绝,并向使用所述目标流量的应用程序客户端返回预设的错误码。
可选的,处理模块,具体用于:
将所述容灾流量转发到所述当前灾备机房的内网中,以使所述当前灾备机房对所述容灾流量进行处理;
当处理的结果无异常,则确定所述当前灾备机房具备提供所述容灾服务的能力。
本申请实施例提供的装置,可以实现上述如图1-2所示的实施例的方法,其实现原理和技术效果类似,此处不再赘述。
图4为本申请实施例提供的电子设备的硬件结构示意图。如图4所示,本实施例提供的电子设备400包括:处理器401,以及与所述处理器通信连接的存储器。其中,处理器401、存储器402通过总线403连接。
在具体实现过程中,处理器401执行所述存储器402存储的计算机执行指令,使得处理器401执行上述方法实施例中的方法。
处理器401的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述的图4所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例的安全防护方法。
本申请实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上所述的安全防护方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (10)

1.一种安全防护方法,其特征在于,所述方法包括:
确定容灾信息,所述容灾信息用于表示当前灾备机房支持容灾的业务功能;
获取访问当前灾备机房的应用流量,并根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量;
将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务。
2.根据权利要求1所述的方法,其特征在于,所述多层级防护策略包括域名级防护、端口级或统一资源定位符URL级防护、接口级防护;
所述根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量,包括:
根据所述容灾信息,确定当前灾备机房支持容灾的目标域名、目标端口或目标URL、以及目标接口;
根据所述目标域名,通过域名级防护,从所述应用流量中确定切换到所述当前灾备机房的第一流量;
根据所述目标端口或目标URL,通过端口级或URL级防护,从所述第一流量中确定待切换到所述当前灾备机房的第二流量;
根据所述目标接口,通过所述接口级防护,从所述第二流量中确定待切换到所述当前灾备机房的第三流量;其中,所述第三流量为容灾流量。
3.根据权利要求2所述的方法,其特征在于,所述根据所述容灾信息,确定当前灾备机房支持容灾的目标域名、目标端口或目标URL、以及目标接口,包括:
根据支持容灾的所述业务功能,确定部署有所述业务功能的目标应用程序;
分析所述目标应用程序的配置,确定所述目标应用程序的域名,并将所述目标应用程序的域名作为所述目标域名;
根据所述目标应用程序上部署的系统以及所述业务功能,确定所述业务功能所属系统对应的访问端口或URL以及所述业务功能对应的服务接口;
将所述访问端口作为所述目标端口或目标URL,将所述服务接口作为所述目标接口。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述目标域名,通过域名级防护,从所述应用流量中确定待切换到所述当前灾备机房的第一流量,包括:
确定使用所述应用流量的各个应用程序客户端,并根据各个所述应用程序客户端的配置信息,确定各个所述应用程序客户端访问所述当前灾备机房使用的互联网域名;
将各个所述应用程序客户端对应的所述互联网域名与所述目标域名进行比对,确定参与容灾操作的目标应用程序;
将目标应用程序客户端使用的应用流量作为所述第一流量。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标端口或目标URL,通过所述端口级或URL级防护,从所述第一流量中确定待切换到所述当前灾备机房的第二流量,包括:
确定所述第一流量对应的代理服务器监听的端口或URL;
将所述目标端口或目标URL与所述第一流量对应的代理服务器监听的端口或URL进行比对,从所述代理服务器中确定监听所述目标端口或目标URL的目标代理服务器;
从所述第一流量中确定由所述目标代理服务器识别的流量为第二流量。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标接口,通过所述接口级防护,从所述第二流量中确定待切换到所述当前灾备机房的第三流量,包括:
将所述目标接口作为具备容灾能力的接口;
从所述第二流量中,确定具备容灾能力的接口的第三流量。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述确定容灾信息,包括:
获取当前灾备机房的部署信息;
根据所述当前灾备机房的部署信息中支持容灾的业务功能,确定所述容灾信息。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
通过所述多层级防护策略,确定拒绝访问当前灾备机房的目标流量;
将所述目标流量在相应的多层级防护策略的防护点进行拒绝,并向使用所述目标流量的应用程序客户端返回预设的错误码。
9.根据权利要求1-3任一项所述的方法,其特征在于,所述将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务,包括:
将所述容灾流量转发到所述当前灾备机房的内网中,以使所述当前灾备机房对所述容灾流量进行处理;
当处理的结果无异常,则确定所述当前灾备机房具备提供所述容灾服务的能力。
10.一种安全防护装置,其特征在于,所述装置包括:
确定模块,用于确定容灾信息,所述容灾信息用于表示当前灾备机房支持容灾的业务功能;
防护模块,用于获取访问当前灾备机房的应用流量,并根据所述应用流量和所述容灾信息,通过多层级防护策略,确定允许访问当前灾备机房的容灾流量;
处理模块,用于将所述容灾流量切换到所述当前灾备机房,以使所述当前灾备机房提供容灾服务。
CN202210287969.6A 2022-03-22 2022-03-22 安全防护方法及装置 Active CN114650216B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210287969.6A CN114650216B (zh) 2022-03-22 2022-03-22 安全防护方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210287969.6A CN114650216B (zh) 2022-03-22 2022-03-22 安全防护方法及装置

Publications (2)

Publication Number Publication Date
CN114650216A true CN114650216A (zh) 2022-06-21
CN114650216B CN114650216B (zh) 2024-07-19

Family

ID=81995624

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210287969.6A Active CN114650216B (zh) 2022-03-22 2022-03-22 安全防护方法及装置

Country Status (1)

Country Link
CN (1) CN114650216B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107454051A (zh) * 2016-06-01 2017-12-08 中兴通讯股份有限公司 访问控制方法及家庭网关
CN107508700A (zh) * 2017-08-15 2017-12-22 北京小米移动软件有限公司 容灾方法、装置、设备及存储介质
CN107766502A (zh) * 2017-10-20 2018-03-06 上海新炬网络信息技术股份有限公司 一种Oracle RAC数据库容灾切换演练方法
CN109542659A (zh) * 2018-11-14 2019-03-29 深圳前海微众银行股份有限公司 应用多活方法、设备、数据中心集群及可读存储介质
US20200186571A1 (en) * 2018-12-05 2020-06-11 International Business Machines Corporation High performance access control
CN112422532A (zh) * 2020-11-05 2021-02-26 腾讯科技(深圳)有限公司 业务通信方法、系统、装置及电子设备
CN113162815A (zh) * 2020-10-22 2021-07-23 广州市汇聚支付电子科技有限公司 一种流量切换方法、系统、设备及介质
CN113949631A (zh) * 2021-11-19 2022-01-18 网宿科技股份有限公司 客户端容灾的处理方法、系统及电子设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107454051A (zh) * 2016-06-01 2017-12-08 中兴通讯股份有限公司 访问控制方法及家庭网关
CN107508700A (zh) * 2017-08-15 2017-12-22 北京小米移动软件有限公司 容灾方法、装置、设备及存储介质
CN107766502A (zh) * 2017-10-20 2018-03-06 上海新炬网络信息技术股份有限公司 一种Oracle RAC数据库容灾切换演练方法
CN109542659A (zh) * 2018-11-14 2019-03-29 深圳前海微众银行股份有限公司 应用多活方法、设备、数据中心集群及可读存储介质
US20200186571A1 (en) * 2018-12-05 2020-06-11 International Business Machines Corporation High performance access control
CN113162815A (zh) * 2020-10-22 2021-07-23 广州市汇聚支付电子科技有限公司 一种流量切换方法、系统、设备及介质
CN112422532A (zh) * 2020-11-05 2021-02-26 腾讯科技(深圳)有限公司 业务通信方法、系统、装置及电子设备
CN113949631A (zh) * 2021-11-19 2022-01-18 网宿科技股份有限公司 客户端容灾的处理方法、系统及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
何亨;黄伟;李涛;曾朋;董新华;: "基于SDS架构的多级DDoS防护机制", 计算机工程与应用, no. 01 *
甘荃;孙曼;: "银行灾备建设研究与实践", 标准科学, no. 1 *

Also Published As

Publication number Publication date
CN114650216B (zh) 2024-07-19

Similar Documents

Publication Publication Date Title
US10225273B2 (en) Secured event monitoring leveraging blockchain
US11075819B2 (en) Identifying unauthorized changes to network elements and determining the impact of unauthorized changes to network elements on network services
CN112671882B (zh) 一种基于微服务的同城双活系统和方法
US10355988B1 (en) System, method, and computer program for preserving service continuity in a network function virtualization (NFV) based communication network
US9912679B1 (en) System, method, and computer program for managing security in a network function virtualization (NFV) based communication network
US9794187B1 (en) System, method, and computer program for resource conversion in a network function virtualization (NFV) based communication network
CN111108733B (zh) 在基于网络功能虚拟化(nfv)的通信网络和软件定义的网络(sdns)中提供安全性的系统、方法和计算机程序
CN102687480B (zh) 基于云的防火墙系统及服务
CN111049695A (zh) 云网关配置方法和系统
US9667509B1 (en) System, method, and computer program for secluding a service in a network based on network function virtualization (NFV)
US10606718B1 (en) System, method, and computer program for managing fault recovery in network function virtualization (Nfv) based networks
US10708230B2 (en) Systems and methods for firewall configuration using block lists
CN114070716B (zh) 应用程序的管理系统、应用程序的管理方法以及服务器
US11106763B2 (en) Systems and methods for transaction-based licensing
CN112256498A (zh) 一种故障处理的方法和装置
US10310932B2 (en) Using a concentration risk of a computing resource to define affinity and anti-affinity workloads
CN115934202A (zh) 一种数据管理方法、系统、数据服务网关及存储介质
US20150341492A1 (en) Collection compliance system
CN114650216B (zh) 安全防护方法及装置
US20240073180A1 (en) Systems and methods for synchronizing hostnames and ip addresses in email systems
US11474918B1 (en) System, method, and computer program for managing fault recovery in network function virtualization (NFV) based networks
CN111310945A (zh) 运维管理方法、装置和电子设备
CN115567605A (zh) 数据中心用户请求处理方法、系统、设备及存储介质
US10387183B1 (en) System, method, and computer program for reducing common work of components in a network function virtualization (NFV) based communication network
CN114745185A (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