System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于电信网络,具体为一种快速实现终端与服务端安全交互的网关及其交互方法。
技术介绍
1、在电视大屏端,目前,传统的终端(大屏,app,小程序)与服务端接口交互,网络安全防护比较弱,比如防止数据泄露、篡改和未经授权的访问。随着国家对网络信息安全越来越重视,现有一些软件厂商开始对系统数据安全进行改造,但功能比较单一,可移植复用性不高。
2、现主流技术架构盛行微服务,一个系统往往由数十甚至上百个系统组成,抽象成可复用,可组装的模块,实现快速复用,统一管理等就成了一个诉求,网关就是将身份认证模块、动态路由转发模块、负载均衡模块、限流模块、熔断降级模块、数据安全模块和日志管理模块均集成到安全交换网关上,提升交互效率。
3、现有技术的技术方案:1)json web tokens(jwt):用于安全地在双方之间传递信息。jwt可以在不保留会话状态的情况下验证用户身份,减少了服务器存储负担。2)使用https协议确保数据在传输过程中不被窃听或篡改。但是现有技术还有以下缺点:首先,安全漏洞利用:如不安全的重定向uri、令牌泄露(尤其是在url、日志或http头部中明文传输)、xss(跨站脚本攻击)和csrf(跨站请求伪造)等都是潜在的风险。其次,随着微服务越来越多,如果每个微服务都要自己去实现一套鉴权操作,那么如此操作会比较冗余。
技术实现思路
1、本专利技术的目的是针对上述问题,提出了一种快速实现终端与服务端安全交互的网关及其交互方法,本专利技术将所有的终端请求经
2、为解决上述技术问题,本专利技术提供了一种快速实现终端与服务端安全交互的网关,包括:
3、请求接入模块,用于管理所有接入请求,作为所有api接口的请求入口;
4、业务聚合模块,用于将所有服务后端注册在网关上,并通过网关统一暴露服务;
5、拦截策略模块,用于提供统一的增加安全、路由、流控公共服务组件;
6、数据加密模块,用于对交互的接口中的请求参数和响应值进行复杂加密,避免数据泄露、篡改;
7、动态路由模块,根据配置规则,将请求转发到对应的业务系统;
8、身份认证模块,用于生成和管理不同业务系统的token,并进行身份认证和校验请求数据篡改。
9、作为优选,所述请求接入模块包括:
10、请求接收单元,用于接收来自终端的请求;
11、请求预处理单元,用于对请求进行预处理;
12、请求分发单元,根据请求信息和配置规则,将请求转发到相应的处理模块。
13、作为优选,所述预处理具体包括提取请求参数、解析协议。
14、作为优选,所述数据加密模块采用基于aes/cbc/pkcs5padding原理的加解密算法,采用随机生成的requestid与约定的secret进行md5加密后作为密钥,对请求参数进行aes加密,同时对响应数据也进行aes加密。
15、作为优选,所述动态路由模块支持多种路由配置方式,包括基础uri路由配置方式、基于代码的路由配置方式和注册中心相结合的路由配置方式。
16、作为优选,所述配置规则包括predicate断言条件、过滤器规则,通过代码进行配置,并实现熔断降级功能。
17、作为优选,所述身份认证模块支持根据配置规则,为不同业务系统生成不同的token,并在请求处理过程中进行身份认证及数据篡改校验。
18、一种快速实现终端与服务端安全交互的网关交互方法,包括如下步骤:
19、s1、客户端生成requestid和加密请求参数;
20、s2、请求登录接口获取token,网关根据配置判断当前请求是否需要生成token,若需要,对请求数据解密,并通过路由转发到对应的业务系统;
21、s3、网关将解密后的请求参数通过内网转发到业务系统;
22、s4、业务系统处理请求并返回数据及token;
23、s5、网关对响应数据根据密钥进行aes加密,网关将加密后的响应数据返回给客户端;
24、s6、客户端对响应数据进行解密,同时获取token信息,进入下一步交互场景;
25、s7、客户端生成新的requestid和加密请求参数;
26、s8、请求业务接口带上token和加密的业务数据;
27、s9、校验token有效性并对请求数据解密,对请求数据解密,通过路由转发到对应的业务系统,若token有效,后续交互同步s4;若token无效,返回token过期或token错误;其中,若token无效,网关返回token过期的信息;
28、s10、客户端请求刷新token的接口,校验刷新token是否合法,如果合法,根据配置生成最新有效的token,网关将最新有效的token返回给客户端;
29、s11、客户端使用最新token,重复s7进行后续请求。
30、与现有技术相比,本专利技术的有益效果:
31、1、本方案的网关是一个处于应用程序或服务之前的系统,用来管理授权、访问控制和流量限制等,这样微服务就会被微服务网关保护起来,对所有的调用者透明。因此,隐藏在微服务网关后面的业务系统就可以更加专注于业务本身。同时,微服务网关还可以为服务提供和沉淀更多附加功能。
32、2、本方案已经上线使用,在新增系统或接口时,不再需要额外开发,通过安全网关统一入口,即可达到防止数据泄露、篡改和未经授权的访问,通过安全部门的验收。
33、3、本方案作为所有交互请求的统一入口,实现身份验证、动态路由转发模块、负载均衡模块、流量控制、监控和日志记录等功能,增加安全性的同时也便于管理和维护。实现快速开发快速交互,节省人力成本。
34、4、本方案所有的终端请求都经过网关系统,然后再由网关系统进行分发各业务系统。新增业务系统,只需要增加网关配置即可快速实现终端与服务端安全交互。
35、5、本方案在网关中可管理不同系统的token生成策略,可对安全字段配置,校验每个请求的值是否被篡改。避免业务系统直接暴露给终端。对交互的接口中的请求参数和响应值进行复杂加密,避免数据泄露、篡改。
本文档来自技高网...【技术保护点】
1.一种快速实现终端与服务端安全交互的网关,其特征在于,包括:
2.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述请求接入模块包括:
3.根据权利要求2所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述预处理具体包括提取请求参数、解析协议。
4.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述数据加密模块采用基于AES/CBC/PKCS5Padding原理的加解密算法,采用随机生成的requestId与约定的secret进行MD5加密后作为密钥,对请求参数进行AES加密,同时对响应数据也进行AES加密。
5.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述动态路由模块支持多种路由配置方式,包括基础URI路由配置方式、基于代码的路由配置方式和注册中心相结合的路由配置方式。
6.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述配置规则包括Predicate断言条件、过滤器规则,通过代码进行配置,并实现
7.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述身份认证模块支持根据配置规则,为不同业务系统生成不同的token,并在请求处理过程中进行身份认证及数据篡改校验。
8.一种快速实现终端与服务端安全交互的网关交互方法,适用于如权利要求1-7任意一项所述的一种快速实现终端与服务端安全交互的网关,其特征在于,包括如下步骤:
...【技术特征摘要】
1.一种快速实现终端与服务端安全交互的网关,其特征在于,包括:
2.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述请求接入模块包括:
3.根据权利要求2所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述预处理具体包括提取请求参数、解析协议。
4.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,其特征在于,所述数据加密模块采用基于aes/cbc/pkcs5padding原理的加解密算法,采用随机生成的requestid与约定的secret进行md5加密后作为密钥,对请求参数进行aes加密,同时对响应数据也进行aes加密。
5.根据权利要求1所述的一种快速实现终端与服务端安全交互的网关,...
【专利技术属性】
技术研发人员:华志宾,吴勇,
申请(专利权)人:易视腾科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。