一种云应用程序的发布方法、发布系统及访问方法转让专利

申请号 : CN201810882900.1

文献号 : CN109040069B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨正权张沂王进才

申请人 : 江苏易安联网络技术有限公司

摘要 :

本发明公开一种云应用程序的发布方法、发布系统及访问方法。本发明提供的云应用程序的发布方法及发布系统,在云端服务器建立安全容器,将云应用程序部署在安全容器内,对外只发布一个地址和端口,通过安全容器将众多应用保护起来,大大降低了云应用程序本身被攻击的风险,提高了云应用程序的安全性。本发明提供的云应用程序的访问方法,外网客户端访问不同的云应用程序时,由安全容器内部的代理服务器进行解析并且转发请求,外网客户端通过一个代理服务器可访问不同的云应用程序,也解决了用户在访问云应用程序过程中的应用安全问题,提高了访问云应用程序的用户的安全性。

权利要求 :

1.一种云应用程序的发布方法,其特征在于,所述发布方法包括:在云端服务器建立安全容器,所述安全容器内部包括认证中心、代理服务器和用户的各个应用程序,所述安全容器包括一个逻辑接口,其中,所述认证中心用于对向所述代理服务器发送鉴权请求的外网客户端进行鉴权认证;

配置各个所述应用程序的名称、域名地址和协议;

采用加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的加密域名,所述外网客户端通过所述加密域名访问对应的应用程序。

2.根据权利要求1所述的发布方法,其特征在于,所述采用加密方法对每个所述应用程序的域名地址进行加密,具体包括:采用哈希加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的哈希加密域名。

3.一种云应用程序的发布系统,其特征在于,所述发布系统包括:安全容器建立模块,用于在云端服务器建立安全容器,所述安全容器内部包括认证中心、代理服务器和用户的各个应用程序,所述安全容器包括一个逻辑接口,其中,所述认证中心用于对向所述代理服务器发送鉴权请求的外网客户端进行鉴权认证;

应用程序配置模块,用于配置各个所述应用程序的名称、域名地址和协议;

域名加密模块,用于采用加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的加密域名,所述外网客户端通过所述加密域名访问对应的应用程序。

4.根据权利要求3所述的发布系统,其特征在于,所述域名加密模块采用哈希加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的哈希加密域名。

5.一种云应用程序的访问方法,其特征在于,所述访问方法用于访问根据权利要求3-4任一项所述的发布系统,所述访问方法包括:外网客户端通过安全容器的逻辑接口向代理服务器发送鉴权请求;

所述代理服务器将所述鉴权请求发送给认证中心进行鉴权认证;

认证成功后所述代理服务器通过所述安全容器的逻辑接口向所述外网客户端返回鉴权信息;

所述代理服务器通过所述安全容器的逻辑接口获取所述外网客户端发送的请求数据包,对所述请求数据包进行解析,并根据解析的结果将所述外网客户端的请求数据包发送给对应的应用程序。

6.根据权利要求5所述的访问方法,其特征在于,所述外网客户端为B/S架构应用访问客户端或C/S架构应用访问客户端。

说明书 :

一种云应用程序的发布方法、发布系统及访问方法

技术领域

[0001] 本发明涉及应用程序领域,特别是涉及一种云应用程序的发布方法、发布系统及访问方法。

背景技术

[0002] 目前,云服务器对于用户而言,只是单纯的将多个应用的服务端部署在云服务器上。如图1所示,业务系统A、业务系统B、业务系统C等应用程序本身单独部署在服务器上,对外发布的地址也是相对独立的。用户访问时,发送的请求包含目标应用程序的地址以及用户名和密码,由应用程序本身对请求进行解析和处理,从而与用户建立通信,达到用户访问的目标。
[0003] 可见,现有的技术方案对于云端应用服务采取的是独立部署、独立发布的方式,而且对于应用程序而言最外层的防护即是其本身。不同的用户通过不同的地址来访问不同的应用程序,这样不仅应用程序受到攻击的可能性很大,用户在访问云应用程序时也存在很大的安全隐患。
[0004] 因此,如何提高云应用程序的安全性及访问云应用程序时用户的安全性,成为本领域技术人员亟需解决的技术问题。

发明内容

[0005] 本发明的目的是提供一种云应用程序的发布方法、发布系统及访问方法,不仅能够大大降低云应用程序本身被攻击的风险,提高云应用程序的安全性,而且还能解决用户在访问云应用程序过程中的应用安全问题,提高访问云应用程序的用户的安全性。
[0006] 为实现上述目的,本发明提供了如下方案:
[0007] 一种云应用程序的发布方法,所述发布方法包括:
[0008] 在云端服务器建立安全容器,所述安全容器内部包括认证中心、代理服务器和用户的各个应用程序,所述安全容器包括一个逻辑接口,其中,所述认证中心用于对向所述代理服务器发送鉴权请求的外网客户端进行鉴权认证;
[0009] 配置各个所述应用程序的名称、域名地址和协议;
[0010] 采用加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的加密域名,所述外网客户端通过所述加密域名访问对应的应用程序。
[0011] 可选的,所述采用加密方法对每个所述应用程序的域名地址进行加密,具体包括:
[0012] 采用哈希加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的哈希加密域名。
[0013] 一种云应用程序的发布系统,所述发布系统包括:
[0014] 安全容器建立模块,用于在云端服务器建立安全容器,所述安全容器内部包括认证中心、代理服务器和用户的各个应用程序,所述安全容器包括一个逻辑接口,其中,所述认证中心用于对向所述代理服务器发送鉴权请求的外网客户端进行鉴权认证;
[0015] 应用程度配置模块,用于配置各个所述应用程序的名称、域名地址和协议;
[0016] 域名加密模块,用于采用加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的加密域名,所述外网客户端通过所述加密域名访问对应的应用程序。
[0017] 可选的,所述域名加密模块采用哈希加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的哈希加密域名。
[0018] 一种云应用程序的访问方法,所述访问方法用于访问根据权利要求3-4任一项所述的发布系统,所述访问方法包括:
[0019] 外网客户端通过安全容器的逻辑接口向代理服务器发送鉴权请求;
[0020] 所述代理服务器将所述鉴权请求发送给认证中心进行鉴权认证;
[0021] 认证成功后所述代理服务器通过所述安全容器的逻辑接口向所述外网客户端返回鉴权信息;
[0022] 所述代理服务器通过所述安全容器的逻辑接口获取所述外网客户端发送的请求数据包,对所述请求数据包进行解析,并根据解析的结果将所述外网客户端的请求数据包发送给对应的应用程序。
[0023] 可选的,所述外网客户端为B/S架构应用访问客户端或C/S架构应用访问客户端。
[0024] 根据本发明提供的具体实施例,本发明公开了以下技术效果:
[0025] 本发明提供的云应用程序的发布方法及发布系统,在云端服务器建立安全容器,将云应用程序部署在安全容器内,对外只发布一个地址和端口,通过安全容器将众多应用保护起来,大大降低了云应用程序本身被攻击的风险,提高了云应用程序的安全性。
[0026] 本发明提供的云应用程序的访问方法,外网客户端访问不同的云应用程序时,由安全容器内部的代理服务器进行解析并且转发请求,外网客户端通过一个代理服务器可访问不同的云应用程序,也解决了用户在访问云应用程序过程中的应用安全问题,提高了访问云应用程序的用户的安全性。

附图说明

[0027] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0028] 图1为现有技术中云应用程序的访问信令交互图;
[0029] 图2为本发明实施例1提供的云应用程序的发布方法的流程图;
[0030] 图3为本发明实施例2提供的云应用程序的发布系统的结构框图;
[0031] 图4为本发明实施例3提供的一种云应用程序的访问方法的流程图;
[0032] 图5为本发明实施例3提供的一种云应用程序的访问方法的信令交互图;
[0033] 图6为本发明实施例3提供的认证过程的流程图;
[0034] 图7为本发明实施例3提供的短信认证的流程图;
[0035] 图8为本发明实施例3提供的令牌认证的流程图;
[0036] 图9为本发明实施例3提供的解析真实地址的流程图;
[0037] 图10为本发明实施例3提供的不同架构类型的外网客户端的访问流程图。

具体实施方式

[0038] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0039] 本发明的目的是提供一种云应用程序的发布方法、发布系统及访问方法,不仅能够大大降低云应用程序本身被攻击的风险,提高云应用程序的安全性,而且还能解决用户在访问云应用程序过程中的应用安全问题,提高访问云应用程序的用户的安全性。
[0040] 为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
[0041] 实施例1:
[0042] 图2为本发明实施例1提供的云应用程序的发布方法的流程图。如图2所示,一种云应用程序的发布方法,所述发布方法包括:
[0043] 步骤101:在云端服务器建立安全容器,所述安全容器内部包括认证中心、代理服务器和用户的各个应用程序,所述安全容器包括一个逻辑接口,其中,所述认证中心用于对向所述代理服务器发送鉴权请求的外网客户端进行鉴权认证。
[0044] 步骤102:配置各个所述应用程序的名称、域名地址和协议。
[0045] 步骤103:采用加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的加密域名,所述外网客户端通过所述加密域名访问对应的应用程序。本实施例中,采用哈希加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的哈希加密域名。
[0046] 实施例2:
[0047] 图3为本发明实施例2提供的云应用程序的发布系统的结构框图。如图3所示,一种云应用程序的发布系统,所述发布系统包括:
[0048] 安全容器建立模块201,用于在云端服务器建立安全容器,所述安全容器内部包括认证中心、代理服务器和用户的各个应用程序,所述安全容器包括一个逻辑接口,其中,所述认证中心用于对向所述代理服务器发送鉴权请求的外网客户端进行鉴权认证。
[0049] 应用程度配置模块202,用于配置各个所述应用程序的名称、域名地址和协议。
[0050] 域名加密模块203,用于采用加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的加密域名,所述外网客户端通过所述加密域名访问对应的应用程序。本实施例中,所述域名加密模块203采用哈希加密方法对每个所述应用程序的域名地址进行加密,获得各个所述应用程序的哈希加密域名。
[0051] 实施例3:
[0052] 图4为本发明实施例3提供的一种云应用程序的访问方法的流程图。如图4所示,一种云应用程序的访问方法,所述访问方法用于访问所述的发布系统,所述访问方法包括:
[0053] 步骤301:外网客户端通过安全容器的逻辑接口向代理服务器发送鉴权请求。本实施例中,所述外网客户端为B/S架构应用访问客户端或C/S架构应用访问客户端。
[0054] 步骤302:所述代理服务器将所述鉴权请求发送给认证中心进行鉴权认证。
[0055] 步骤303:认证成功后所述代理服务器通过所述安全容器的逻辑接口向所述外网客户端返回鉴权信息。
[0056] 步骤304:所述代理服务器通过所述安全容器的逻辑接口获取所述外网客户端发送的请求数据包,对所述请求数据包进行解析,并根据解析的结果将所述外网客户端的请求数据包发送给对应的应用程序。
[0057] 图5为本发明实施例3提供的一种云应用程序的访问方法的信令交互图。本发明首先在云端服务器建立安全容器,将用户的云应用程序部署在安全容器内部,并对外只开放一个端口,从而达到保护用户应用程序的目的。如图5所示,虚线内即为本发明在云端建立的安全容器,安全容器内部包含用户的B/S架构的应用程序、C/S架构的应用程序、第一代理服务器Enwas、第二代理服务器Enssl以及统一的认证中心等。用户部署完成后,只需要将用户的所有应用程序在管理端配置,配置内容包括应用程序的名称、域名地址、协议等,配置完成后,可针对应用程序的真实访问域名配置一个经过哈希加密的域名,用于给外网客户端访问使用。外网客户端通过请求经过哈希加密之后的域名来访问,事实上访问的是本发明的代理服务器,由代理服务器对于用户的请求判断其账号是否可信、设备是否可信以及流量是否可信,有效的阻挡了大部分非法请求。下面将从用户鉴权、B/S应用访问以及C/S应用访问三个方面来进行详细说明。
[0058] 如图5所示的鉴权过程,用户1通过A1-A6步骤完成鉴权,A1、A2通过HTTP请求将用户名、密码发送至第一代理服务器Enwas,A3、A4步骤则由第一代理服务器Enwas与统一的认证中心进行认证,如果认证成功,则返回用户登录成功信息(包含邮箱、手机号等等)。其中,具体的认证过程如图6所示:
[0059] 首先外网客户端即图5中的用户web端向第一代理服务器Enwas发送一个访问请求,然后第一代理服务器Enwas判断请求内是否有鉴权的票据信息(ticket),如果用户已经鉴权并且请求内携带ticket,则返回用户所请求的系统访问界面,完成通信通道的建立。如果请求内部没有鉴权信息(ticket),则第一代理服务器Enwas会返回让用户重新定向到所请求系统的登录界面的信息。下一步就需要进行用户认证,需要向所请求应用相关的认证服务器发送请求,例如:Oauth服务器。Web端直接对Oauth请求登录,然后Oauth返回对应的登录页面;用户通过登录页面输入账号密码并送往Oauth进行认证,在认证通过后Oauth会返回一个ticket,并且允许web端对所请求的目标应用程序发送连接请求。
[0060] 同时,本发明支持二次登录校验,包括短信验证、邮箱验证、动态令牌验证、随机验证码验证和硬件特征码验证。
[0061] 其中,短信认证的的具体过程如图7所示:
[0062] 用户通过Web端向casb发送请求,请求打开网页,casb会响应请求返回网页;然后,用户请求登录,即web端向casb发送请求,casb会回复一个页面,上面会有“请输入短信验证码”的请求,同时casb会通过短信网关,给此用户的手机发送短信验证码。用户在收到验证码后,并且正确输入确认后,便可以通过casb的认证,从而可以顺利访问应用。
[0063] 令牌认证的具体过程如图8所示:
[0064] 用户通过Web端向casb发送ticket请求打开网页,casb返回网页;然后,用户请求登录,即web端向casb发送请求,casb会回复一个页面,上面会有“请输入动态令牌”的请求,用户通过令牌输入对应的短码,发送给casb,casb会通过令牌厂家给出的验证库,通过特殊的算法验证,识别认证,并判断是否符合。
[0065] 再通过A5、A6向用户返回Session_id(鉴权信息),最后返回到客户端,同时,针对用户访问的客户端浏览器,会保存Session_id(鉴权信息),用来判断用户的登录状态,从而完成整个鉴权的过程。
[0066] 鉴权过程完毕后,则是用户访问应用程序的通信过程,这里对于B/S架构的系统和C/S架构的系统有所不同,下面分开分别对其进行介绍。其中B/S架构的系统用户通过B、C两条线路分别访问业务系统1和业务系统2,各业务系统即为不同的云应用程序。通过客户端发送目标地址链接以及Session_id(鉴权信息),其中步骤B1请求内容为1.casb.enlink.cn,步骤C1的请求内容为2.casb.enlink.cn,分别通过B2、C2转发至第一代理服务器Enwas,第一代理服务器Enwas根据请求地址解析出真实地址,然后定向到目标服务器,即将步骤B1的请求内容通过对1.casb.enlink.cn的解析后,通过B3指向目标应用服务1,将步骤C1的请求内容2.casb.enlink.cn解析后通过C3指向目标应用服务2,即业务系统(云应用程序)在安全容器内的真实服务地址,,通过B4-B6以及C4-C6返回客户访问端。至此,完成整个访问通信通道的建立。
[0067] 如图9所示,根据请求地址解析真实地址的解析实现过程如下:
[0068] 用户的请求链接为1.casb.enlink.cn,而在系统内,1.casb.enlink.cn会作为key值,配置相应的value值,而casb内部数据库中会有一个value值与这个key相对应,在跳转到具体应用时,后台对key与value值进行替换,从而到达真正的应用地址。
[0069] 对于C/S架构的用户访问,鉴权过程与B/S用户一样,通过D1-D6完成鉴权。访问通信通道的建立是用户通过客户端内部的Agent(客户端服务)进行策略下发,Agent(客户端服务)服务拦截相应进程的数据包,通过对数据包的解析,加上特定的包头(含应用类型、url、端口等信息),通过E1、E2将请求发送至第二代理服务器Enssl,由第二代理服务器Enssl对请求数据包进行解析,然后通过E3将请求转向真实目标地址服务器-业务系统4,即业务系统在云容器内的真实应用服务,通过E4-E6返回数据,从而完成整个访问通信通道的建立。
[0070] 不同架构类型的外网客户端的访问流程如图10所示:用户首先通过客户端发送请求至代理服务器,由代理服务器向统一认证中心进行用户身份认证,如果认证成功,即返回相应的鉴权信息至客户端,然后客户端根据不同类型的应用,B/S类型的应用访问则将请求发送至第一代理服务器Enwas,第一代理服务器Enwas进行解析并转发至真实目标服务器。C/S用户通过客户端内部的Agent(客户端服务)进行策略下发,Agent(客户端服务)服务拦截相应进程的数据包,通过对数据包的解析,加上特定的包头(含应用类型、url、端口等信息),将请求发送至第二代理服务器Enssl,由第二代理服务器Enssl对请求数据包进行解析并将请求转向真实目标地址服务器。
[0071] 本发明提供的云应用程序的发布方法及发布系统,在云端服务器建立安全容器,将云应用程序部署在安全容器内,对外只发布一个地址和端口,通过安全容器将众多应用保护起来,对于用户访问不同的应用,由安全容器的代理服务器进行解析并且转发请求,这样大大降低了应用本身被攻击的风险。同时,外网客户端通过一个代理服务器集可访问不同的云应用程序,也解决了用户在访问云应用程序过程中的应用安全问题,提高了访问云应用程序的用户的安全性。
[0072] 本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0073] 本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。