CN114915435B - 一种业务数据访问方法及系统 - Google Patents
一种业务数据访问方法及系统 Download PDFInfo
- Publication number
- CN114915435B CN114915435B CN202110181479.3A CN202110181479A CN114915435B CN 114915435 B CN114915435 B CN 114915435B CN 202110181479 A CN202110181479 A CN 202110181479A CN 114915435 B CN114915435 B CN 114915435B
- Authority
- CN
- China
- Prior art keywords
- gateway
- access request
- information
- interface
- user
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000012795 verification Methods 0.000 claims abstract description 37
- 230000015654 memory Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000009466 transformation Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 7
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000005336 cracking Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/108—Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种业务数据访问方法及系统,利用网关代理接口接收访问请求,访问请求用于调用目标业务数据库,目标业务数据库为多个业务数据库中任一个;网关代理接口根据访问请求进行登录权限校验,在登录权限校验通过后,根据访问请求生成签名密钥,并将访问请求和签名密钥发送至网关服务接口;网关服务接口对签名密钥进行校验,在签名密钥校验通过后,根据访问请求查找网关数据库中的网关路由信息;网关服务接口根据网关路由信息调用目标业务数据库,得到与访问请求对应的目标业务数据。本发明无需额外部署服务器,不改变原有业务系统的调用方式,降低原有业务系统接入通用网关的改造成本,防止数据伪造,增加系统安全性。
Description
技术领域
本发明涉及数据存储领域,具体涉及一种业务数据访问方法及系统。
背景技术
当前运营管理系统众多,数据透传过程中由于各业务系统与通用网关之间的登录鉴权功能相互独立,用户在使用新功能时,需要同时登录业务系统与通用网关,在其他系统接入通用网关之后,导致原有系统功能割裂感较强,用户体验较差,对于升级改造周期较长的系统,直接将原有业务迁移重构的成本高,且风险较大。
发明内容
有鉴于此,本发明实施例提供了一种业务数据访问方法及系统,解决现有技术中多个业务系统接入网关后用户体验差,改造成本高的问题。
为达到上述目的,本发明提供如下技术方案:
第一方面,本发明实施例提供一种业务数据访问方法,包括:利用网关代理接口接收访问请求,所述访问请求用于调用目标业务数据库,所述目标业务数据库为多个业务数据库中任一个;所述网关代理接口根据所述访问请求进行登录权限校验,在登录权限校验通过后,根据所述访问请求生成签名密钥,并将所述访问请求和所述签名密钥发送至网关服务接口;所述网关服务接口对所述签名密钥进行校验,在签名密钥校验通过后,根据所述访问请求查找网关数据库中的网关路由信息;所述网关服务接口根据所述网关路由信息调用所述目标业务数据库,得到与所述访问请求对应的目标业务数据。
在一实施例中,所述访问请求中包括:用户信息,所述网关代理接口根据所述访问请求进行登录权限校验,包括:所述网关代理接口利用所述用户信息在会话对象中查找对应的用户会话信息是否存在;在所述用户会话信息存在的情况下,确定登录权限校验通过。
在一实施例中,本发明实施例提供的业务数据访问方法还包括:在所述用户会话信息不存在的情况下,生成用户登录请求;监测所述用户登录请求的响应信息,以使得所述目标业务数据库获取所述响应信息中的用户登录信息;接收所述目标业务数据库发送的用户登录信息,判断所述用户信息与所述用户登录信息是否一致;如果一致,则确定登录权限校验通过,将所述用户信息对应的用户登录信息确定为用户会话信息,并将所述用户会话信息存储至会话对象。
在一实施例中,所述访问请求中还包括:请求内容,所述在登录权限校验通过后,根据所述访问请求生成签名密钥,并将所述访问请求和所述签名密钥发送至网关服务接口,包括:利用所述用户信息和所述请求内容,生成签名密钥,以配置对应的网络地址;根据所述网络地址,将所述访问请求和所述签名密钥发送至网关服务接口。
在一实施例中,所述利用所述用户信息和所述请求内容,生成签名密钥,包括:将预设接口密钥、预设位数的随机字母、预设时限、用户信息及请求内容进行组合,生成消息字符串;利用预设摘要算法对所述消息字符串进行摘要,得到摘要散列码;将预设位数摘要散列码进行编码,生成签名密钥。
在一实施例中,所述根据所述网络地址,将所述访问请求和所述签名密钥发送至网关服务接口,包括:将所述访问请求中的预设替换部分替换为网络地址,得到替换后的网络地址;利用替换后的网络地址将所述访问请求和签名密钥发送至网关服务接口。
在一实施例中,所述网关服务接口对所述签名密钥进行校验,包括:获取当前工作时间,判断所述预设时限是否超过当前工作时间;在所述预设时限未超过当前工作时间的情况下,获取所述访问请求中携带的预设接口密钥,判断所述预设接口密钥与所述签名密钥是否一致;如果一致,则签名密钥校验通过。
在一实施例中,本实施例提供的业务数据访问方法还包括:在所述预设时限超过当前系统时间的情况下,签名密钥校验不通过,并返回信息错误至数据库管理后台。
在一实施例中,所述用户会话信息包括:用户会话所需的属性及配置信息。
第二方面,本发明实施例提供一种业务数据访问系统,包括:第一处理模块,用于利用网关代理接口接收访问请求,所述访问请求用于调用目标业务数据库,所述目标业务数据库为多个业务数据库中任一个;第二处理模块,用于所述网关代理接口根据所述访问请求进行登录权限校验,在登录权限校验通过后,根据所述访问请求生成签名密钥,并将所述访问请求和所述签名密钥发送至网关服务接口;第三处理模块,用于所述网关服务接口对所述签名密钥进行校验,在签名密钥校验通过后,根据所述访问请求查找数据库中的网关路由信息;第四处理模块,用于所述网关服务接口根据所述网关路由信息调用所述目标业务数据库,得到与所述访问请求对应的目标业务数据。
第三方面,本发明实施例提供一种电子设备,包括:至少一个处理器,以及与至少一个处理器通信连接的存储器,其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器执行本发明实施例第一方面的业务数据访问方法。
第四方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令用于使计算机执行本发明实施例第一方面的业务数据访问方法。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
本发明提供的业务数据访问方法,通过在网关服务接口和业务系统之间设置网关代理接口,不需要额外部署服务器,不改变原有业务系统的调用方式,降低原有业务系统接入通用网关的改造成本;对用户进行登录权限校验,并将用户信息和签名密钥,跟随原有请求信息一同发送到网关代理接口进行处理,网关对接收到的数据进行签名校验,确认信息无误后,根据请求内容返回业务数据,实现跨域鉴权和数据代理转发的功能,并使得网关和业务系统之间对请求的数据实现互信,防止数据伪造,增加系统安全性。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的业务数据访问方法的一个具体示例的流程图;
图2为本发明实施例提供的调用过程中的系统架构图;
图3为本发明实施例提供的业务数据访问方法的另一个具体示例的流程图;
图4为本发明实施例提供的业务数据访问系统的功能模块图;
图5为本发明实施例提供的电子设备一个具体示例的组成图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
实施例1
实际应用中在引入新的系统、更新原有系统或是开发新的软件时需要有一个整体的规划,不能割裂各管理阶段的系统功能,需要有意识的将各系统的数据流进行统一的设计,真正让各系统间的数据流顺畅,以达到各系统的统一。本发明实施例提供一种业务数据访问方法,通过设置网关代理接口来实现,在网关服务接口和业务系统之间设置网关代理接口,避免了用户在使用新功能时,需要同时登录业务系统与通用网关,并且接入通用网关之后,原有系统功能割裂感较强,用户体验较差的问题;同时对于稳定性要求较高的系统,解决了升级改造周期较长,直接将原有业务迁移重构成本高,且风险较大的问题。
如图1所示,本发明实施例的业务数据访问方法包括如下步骤:
步骤S1:利用网关代理接口接收访问请求,访问请求用于调用目标业务数据库,目标业务数据库为多个业务数据库中任一个。
随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,用户通过浏览器向业务系统发送获取数据的访问请求时,本发明实施例通过在网关服务接口和业务系统之间设置网关代理接口,使得网关代理接口先接收访问请求,其中访问请求用于调用目标业务数据库,目标业务数据库为多个业务数据库中任一个,即在系统应用部署后,需要提前在业务数据库中配置好各个业务系统的访问路径与网关服务接口的映射关系,便于通过网关服务接口快速准确找到相应的业务系统的业务数据。例如,通常情况下访问请求中一般包含用户信息、请求数据信息和请求内容。
需要说明的是,本发明实施例中,访问请求包含的信息仅仅通过举例说明,在实际应用中也可以包含其他信息,根据实际的系统需求进行设定与调整,并且用户通过浏览器向业务系统发送获取数据的访问请求也是举例进行说明,实际也可以使通过终端设备进行发送,本发明并不以此为限。
步骤S3:网关代理接口根据访问请求进行登录权限校验,在登录权限校验通过后,根据访问请求生成签名密钥,并将访问请求和签名密钥发送至网关服务接口。
本发明实施例中,网关代理接口接收到获取数据的访问请求后,网关代理接口就会根据访问请求进行登录权限校验,只有在登录权限校验通过后,根据访问请求生成签名密钥,并将访问请求和签名密钥发送至网关服务接口,以便于可以通过签名密钥对发送过来的信息进行验证,防止请求被拦截后伪造重发的风险,提高系统整体的安全性。也就是说网关代理接口不是接收到访问请求信息后,立刻作出相应的请求操作,而是需要先进行匹配与校验。需要说明的是,本发明实施例中的校验请求信息的方式是根据实际系统的安全性及准确性的要求可以进行相应的调整的,本发明并不以此为限。
步骤S5:网关服务接口对签名密钥进行校验,在签名密钥校验通过后,根据访问请求查找网关数据库中的网关路由信息。
本发明实施例中,网关服务接口接收到签名密钥后,网关服务接口对接收的签名密钥进行校验,以便于对访问请求进行进一步的验证与确认,将接收到的签名密钥与预设接口密钥进行比较校验,两者一致的情况下确定接收到的签名密钥正确,查找网关数据库中的网关路由信息。其中,网关服务接口是开源的致力于提供高性能和透明化的远程服务调用方案,以及服务治理方案,可以在某个服务器集群中提供单一专注的服务,这样不与其他服务混杂,同时网关服务接口通过监控每台服务器而实现负载均衡,只需在注册中心订阅即可到相应服务器请求服务,实现了高性能和透明化,网关服务接口为一个分布式服务框架。
步骤S7:网关服务接口根据网关路由信息调用目标业务数据库,得到与访问请求对应的目标业务数据。
本发明实施例中,查找到网关数据库中的网关路由信息后,根据网关路由信息调用对应的目标业务系统的服务,得到与访问请求对应的目标业务数据。例如,当网关服务接口查找到网关数据库中的网关路由信息后,将根据网关服务接口对应的业务系统访问路径去访问相应的业务系统,调用业务系统中与请求内容对应的业务数据,并将获取到的数据原路返回至用户,就完成一次数据的获取,这个整体过程对请求信息进行了相应的验证,保证了请求的准确性及数据的安全性。
在实际应用中,调用过程中的系统架构如图2所示,(1)用户访问页面时,前端页面请求本地的网关代理接口,获取目标业务数据。(2)网关代理接口收到请求(http)后,进行登录鉴权校验,权限校验通过后,将用户信息和请求数据一并使用数字签名方法进行签名加密,并根据URL替换规则,将请求打到真实的网关服务的地址上。(3)网关服务接口对数字签名进行校验,证明数据没有被篡改之后,根据根据请求的内容,访问(rpc)网关dubbo接口获取数据库中的网关路由信息,并返回结果。(4)网关dubbo接口收到请求后,通过查询网关数据库获取对应网关路由数据,并将结果返回。(5)网关服务接口根据应用所配置的业务系统dubbo路由信息,调用各业务系统dubbo服务,查询对应数据,并将结果原路返回,直到回到前端页面,通过浏览器渲染给用户,至此一次完整的请求调用完成。
本发明提供的业务数据访问方法,通过在网关服务接口和业务系统之间设置网关代理接口,不需要额外部署服务器,不改变原有业务系统的调用方式,降低原有业务系统接入通用网关的改造成本;对用户进行登录权限校验,并将用户信息和签名密钥,跟随原有请求信息一同发送到网关代理接口进行处理,网关对接收到的数据进行签名校验,确认信息无误后,根据请求内容返回业务数据,实现跨域鉴权和数据代理转发的功能,并使得网关和业务系统之间对请求的数据实现互信,防止数据伪造,增加系统安全性。
在一具体实施例中,如图3所示,访问请求中包括:用户信息,网关代理接口根据访问请求进行登录权限校验,包括如下步骤:
步骤S31:网关代理接口利用用户信息在会话对象中查找对应的用户会话信息是否存在。
本发明实施例中,网关代理接口利用用户信息在会话对象中查找对应的用户会话信息是否存在。其中,用户会话信息包括:用户会话所需的属性及配置信息,比如记录了用户的登录名、密码、用户身份基本信息及权限信息等,业务系统收到请求信息后,在会话对象中查找对应的用户会话信息是否存在,如果对应的用户会话信息存在,则说明用户已经登录;如果在会话对象中对应的用户会话信息不存在,则会指引用户跳转到登录界面进行账号和密码的输入,然后对比输入的账号及密码和用户会话信息中的账号及密码进行比较。
实际应用中,会话对象用于存储特定的用户会话所需的信息,会话(Session)的作用时间从用户到达某个特定的网页开始,到该用户离开网页站点,或在程序中利用代码终止某个会话结束,但如果在一个会话中,客户端长时间不向服务器发出请求,会话对象就会自动消失,该时间取决于服务器,例如,Tomcat服务器默认为30分钟,引用会话则可以让一个用户访问多个页面之间的切换也会保留该用户的信息。
需要说明的是,系统为每个访问者都设立一个独立的会话对象,用以存储Session变量,并且各个访问者的会话对象互不干扰,并且会话对象的关闭时间可以通过编写程序或者根据实际需求进行修改,本发明并不以此为限。
步骤S32:在用户会话信息存在的情况下,确定登录权限校验通过。
本发明实施例中,在用户会话信息存在的情况下,就说明此时用户已经是成功登录的状态,用户成功登录后此用户相应的用户会话信息就会存储在会话对象中,则得到登录权限校验成功的结果。
步骤S33:在用户会话信息不存在的情况下,生成用户登录请求。
本发明实施例中,在用户会话信息不存在的情况下,生成用户登录请求,用户登录请求用于引导用户输入账号和密码。例如,当用户会话信息不存在的情况下,首先会跳转到登录页,引导用户输入相应的账号和密码,然后系统会对用户输入的账号和密码进行比对,密码正确则返回登录成功的状态至数据库管理后台,并且将当前用户对应的用户会话信息存储到会话对象中。需要说明的是,本发明实施例仅仅举例说明会跳转到登录页,引导用户输入相应的账号和密码,在实际应用中可以根据实际系统需求由用户自主选择,并且可以自动获取账号只输入相应的密码,本发明并不以此为限。
步骤S34:监测用户登录请求的响应信息,以使得目标业务数据库获取响应信息中的用户登录信息。
步骤S35:接收目标业务数据库发送的用户登录信息,判断用户信息与用户登录信息是否一致。本实施例中,网关代理接口接收目标业务数据库发送的用户登录信息,判断用户信息与用户登录信息是否一致,利用用户信息对用户登录信息进行比对。
步骤S36:如果一致,则确定登录权限校验通过,将用户信息对应的用户登录信息确定为用户会话信息,并将用户会话信息存储至会话对象。
步骤S37:如果不一致,则确定登录权限校验不通过,并返回信息错误至数据库管理后台。
在一具体实施例中,访问请求中还包括:请求内容,其中在登录权限校验通过后,根据访问请求生成签名密钥,并将访问请求和签名密钥发送至网关服务接口,包括如下步骤:
步骤S01:利用用户信息和请求内容,生成签名密钥,以配置对应的网络地址。
本发明实施例中,利用用户信息和请求数据信息,在网关中生成签名密钥,唯一标识用户并且为后续排除错误,避免信息被篡改,使得网关和业务系统之间对请求的数据实现互信,增加系统安全性。
其中利用签名密钥配置网关代理接口的网络地址,其中网络地址用于指定信息的位置,可以使用统一资源定位系统(uniform resource locator,URL)表示网络地址,URL是由一串字符组成,这些字符可以是字母,数字和特殊符号,一个URL可以用多种方法来表现,例如:纸上的字迹,或者是用字符集编码的八位字节序列。URL的解释仅取决于所用字符的特性,在大多数URL方案中,都是使用URL不同部分的字符序列来代表因特网协议中所使用的八位字节序列,例如,在ftp方案中主机名,目录名和文件名就是这样的八位字节序列,它们用URL的不同部分代表。
正如访问资源的方法有很多种一样,对资源进行定位的方案也有好几种,URL的一般语法只是为使用协议来建立新方案提供了一个框架,URL通过提供资源位置的一种抽象标志符来对资源进行定位。系统定位了一个资源后,可能会对它进行各种操作,这些操作可以抽象为下面的几个词:访问,更新,替换,发现属性。需要说明的是,本发明实施例仅举例说明网关代理接口的网络地址的表示形式,在实际应用中还可以根据实际需要进行选择,本发明并不以此为限。
步骤S02:根据网络地址,将访问请求和签名密钥发送至网关服务接口。
本发明实施例中,由于多个业务系统可能复用同一个域名,并通过关代理接口的网络地址(URL)的前几级作为区分,因此通用网关代理接口需要支持URL替换的功能,将原始的URL替换为通用的网关服务可以识别的URL地址信息。利用网络地址将请求信息和签名密钥发送至网关服务接口,确保请求信息的准确性与安全性。
在一具体实施例中,利用用户信息和请求内容,生成签名密钥,包括如下步骤:
步骤S011:将预设接口密钥、预设位数的随机字母、预设时限、用户信息及请求内容进行组合,生成消息字符串。
本发明实施例中,将预设接口密钥、预设位数的随机字母、预设时限、用户信息及请求数据信息进行组合,生成消息字符串。其中预设接口密钥是根据用户id算出来,也就是用户id的另外一种表示方式,保证具有唯一性,目前大多数采用的是回签名机制,也就是所有的参数通过不暴露的保密的方式进行一定的运算,生成某次请求的签名,并且这个签名有一定的时效性,从而降低被伪造的可能性,保证安全。组成字符串的预设时限也是为了保证签名密钥的时效性,例如,可以设置为默认5分钟后过期。需要说明的是,本发明实施例中的预设接口密钥、预设位数的随机字母、预设时限都是可以根据实际系统的保密性及性能进行相应的修改,本发明并不以此为限。
步骤S013:利用预设摘要算法对消息字符串进行摘要,得到摘要散列码。
本发明实施例中,利用预设摘要算法对消息字符串进行摘要,得到摘要散列码,摘要算法的主要特征是加密过程不需要密钥,并且经过加密的数据无法被解密,消息摘要算法不存在密钥的管理与分发问题,适合于分布式网络上使用。例如计算机的口令就是用不可逆加密算法加密的。近年来,随着计算机性能的飞速改善,加密速度不再成为限制这种加密技术发展的桎梏,因而消息摘要算法应用的领域不断增加。其中预设摘要算法可以使用JDK8中提供的MessageDigest信息摘要算法,用SHA256生成信息摘要散列码,需要说明的是,信息摘要算法还可以选择Cyclic Redundancy Check(循环冗余校验)算法或者其他摘要算法,并且生成信息摘要散列码的方法也可以根据需要进行选择,本发明并不以此为限。
步骤S015:将预设位数摘要散列码进行编码,生成签名密钥。
本发明实施例中,将预设位数摘要散列码进行编码,生成签名密钥,例如可以将摘要散列码的前32位使用Base64编码,生成最终的签名密钥。需要说明的是,本发明实施例仅仅举例说明将摘要散列码的前32位使用Base64编码,在实际应用中还可以选择其他方法进行编码,并且预设位数也是可以根据实际需要或经验进行设定的,本发明并不以此为限。
在一具体实施例中,根据网络地址,将访问请求和签名密钥发送至网关服务接口,包括如下步骤:
步骤S021:将访问请求中的预设替换部分替换为网络地址,得到替换后的网络地址。
本发明实施例中,在将请求信息和签名密钥发送至网关服务接口时,可以允许传入一个网络地址替换参数,此网络地址替换参数用于识别网关代理接口的网络地址的替换部分,最终使得被替换后的网络地址可以被网关服务接口识别。
步骤S023:利用替换后的网络地址将访问请求和签名密钥发送至网关服务接口。
本发明实施例中,将替换后的网络地址传入请求信息发送函数中,并将请求信息和签名密钥发送至网关服务接口,需要说明的是,可以通过其他方式传入替换后的网络地址,本发明并不以此为限。
在一具体实施例中,网关服务接口对签名密钥进行校验,包括如下步骤:
步骤S51:获取当前工作时间,判断预设时限是否超过当前工作时间。
本发明实施例中,利用相关函数或算法获取当前工作时间,并且判断预设时限是否超过当前工作时间,如果预设时限超过当前工作时间则说明当前签名密钥已经过期,则不能被信任。需要说明的是,本发明实施例中的获取当前工作时间的方法可以根据实际需求进行选择,本发明并不以此为限。
步骤S53:在预设时限未超过当前工作时间的情况下,获取访问请求中携带的预设接口密钥,判断预设接口密钥与签名密钥是否一致。
本发明实施例中,在预设时限未超过当前工作时间的情况下,说明此时签名密钥还是有效的,利用预设接口密钥与签名密钥进行对比,得到对比结果,确保生成签名密钥中的任一信息都未发生改动,保证数据的安全性与准确性。
步骤S55:如果一致,则签名密钥校验通过。
步骤S57:在预设时限超过当前系统时间的情况下,或者预设接口密钥与签名密钥是不一致,则签名密钥校验不通过,并返回信息错误至数据库管理后台。
本发明提供的业务数据访问方法,通过在网关服务接口和业务系统之间设置网关代理接口,不需要额外部署服务器,不改变原有业务系统的调用方式,降低原有业务系统接入通用网关的改造成本;对用户进行登录权限校验,并将用户信息和签名密钥,跟随原有请求信息一同发送到网关代理接口进行处理,网关对接收到的数据进行签名校验,确认信息无误后,根据请求内容返回业务数据,实现跨域鉴权和数据代理转发的功能,并使得网关和业务系统之间对请求的数据实现互信,防止数据伪造,增加系统安全性;并且在数字签名算法的基础上,加入过期时间和随机字母的方式,防止请求被拦截后伪造重发的风险,提高系统整体的安全性。
实施例2
本发明实施例提供一种业务数据访问系统,如图4所示,包括如下模块:
第一处理模块1,用于利用网关代理接口接收访问请求,访问请求用于调用目标业务数据库,目标业务数据库为多个业务数据库中任一个;此模块执行实施例1中的步骤S1所描述的方法,在此不再赘述。
第二处理模块2,用于网关代理接口根据访问请求进行登录权限校验,在登录权限校验通过后,根据访问请求生成签名密钥,并将访问请求和签名密钥发送至网关服务接口;此模块执行实施例1中的步骤S3所描述的方法,在此不再赘述。
第三处理模块3,用于网关服务接口对签名密钥进行校验,在签名密钥校验通过后,根据访问请求查找网关数据库中的网关路由信息;此模块执行实施例1中的步骤S5所描述的方法,在此不再赘述。
第四处理模块4,用于网关服务接口根据网关路由信息调用目标业务数据库,得到与访问请求对应的目标业务数据;此模块执行实施例1中的步骤S7所描述的方法,在此不再赘述。
本发明提供的业务数据访问系统,通过在网关服务接口和业务系统之间设置网关代理接口,不需要额外部署服务器,不改变原有业务系统的调用方式,降低原有业务系统接入通用网关的改造成本;对用户进行登录权限校验,并将用户信息和签名密钥,跟随原有请求信息一同发送到网关代理接口进行处理,网关对接收到的数据进行签名校验,确认信息无误后,根据请求内容返回业务数据,实现跨域鉴权和数据代理转发的功能,并使得网关和业务系统之间对请求的数据实现互信,防止数据伪造,增加系统安全性。
实施例3
本发明实施例提供一种电子设备,如图5所示,包括:至少一个处理器401,例如CPU(Central Processing Unit,中央处理器),至少一个通信接口403,存储器404,至少一个通信总线402。其中,通信总线402用于实现这些组件之间的连接通信。其中,通信接口403可以包括显示屏(Display)、键盘(Keyboard),可选通信接口403还可以包括标准的有线接口、无线接口。存储器404可以是高速RAM存储器(Ramdom Access Memory,易挥发性随机存取存储器),也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器404可选的还可以是至少一个位于远离前述处理器401的存储装置。其中处理器401可以执行实施例1的业务数据访问方法。存储器404中存储一组程序代码,且处理器401调用存储器404中存储的程序代码,以用于执行实施例1的业务数据访问方法。
其中,通信总线402可以是外设部件互连标准(perIPheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。通信总线402可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
其中,存储器404可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(英文:hard diskdrive,缩写:HDD)或固降硬盘(英文:solid-state drive,缩写:SSD);存储器404还可以包括上述种类的存储器的组合。
其中,处理器401可以是中央处理器(英文:central processing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。
其中,处理器401还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(英文:application-specific integrated circuit,缩写:ASIC),可编程逻辑器件(英文:programmable logic device,缩写:PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(英文:complex programmable logic device,缩写:CPLD),现场可编程逻辑门阵列(英文:field-programmable gate array,缩写:FPGA),通用阵列逻辑(英文:generic arraylogic,缩写:GAL)或其任意组合。
可选地,存储器404还用于存储程序指令。处理器401可以调用程序指令,实现如本申请执行实施例1中的业务数据访问方法。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机可执行指令,该计算机可执行指令可执行实施例1的业务数据访问方法。其中,存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(RandomAccess Memory,RAM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,缩写:HDD)或固降硬盘(Solid-State Drive,SSD)等;存储介质还可以包括上述种类的存储器的组合。
显然,上述实施例仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
Claims (7)
1.一种业务数据访问方法,其特征在于,包括:
利用网关代理接口接收访问请求,所述访问请求用于调用目标业务数据库,所述目标业务数据库为多个业务数据库中任一个;
所述网关代理接口根据所述访问请求进行登录权限校验,在登录权限校验通过后,根据所述访问请求生成签名密钥,并将所述访问请求和所述签名密钥发送至网关服务接口,
所述访问请求中包括:用户信息,所述网关代理接口根据所述访问请求进行登录权限校验,包括:
所述网关代理接口利用所述用户信息在会话对象中查找对应的用户会话信息是否存在,在所述用户会话信息存在的情况下,确定登录权限校验通过,
所述访问请求中还包括:请求内容,所述在登录权限校验通过后,根据所述访问请求生成签名密钥,并将所述访问请求和所述签名密钥发送至网关服务接口,包括:
利用所述用户信息和所述请求内容,生成签名密钥,以配置对应的网络地址,包括:
将预设接口密钥、预设位数的随机字母、预设时限、用户信息及请求内容进行组合,生成消息字符串,利用预设摘要算法对所述消息字符串进行摘要,得到摘要散列码,将预设位数摘要散列码进行编码,生成签名密钥,
根据所述网络地址,将所述访问请求和所述签名密钥发送至网关服务接口,包括:
将所述访问请求中的预设替换部分替换为网络地址,得到替换后的网络地址,利用替换后的网络地址将所述访问请求和签名密钥发送至网关服务接口;
所述网关服务接口对所述签名密钥进行校验,在签名密钥校验通过后,根据所述访问请求查找网关数据库中的网关路由信息;
所述网关服务接口根据所述网关路由信息调用所述目标业务数据库,得到与所述访问请求对应的目标业务数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
在所述用户会话信息不存在的情况下,生成用户登录请求;
监测所述用户登录请求的响应信息,以使得所述目标业务数据库获取所述响应信息中的用户登录信息;
接收所述目标业务数据库发送的用户登录信息,判断所述用户信息与所述用户登录信息是否一致;
如果一致,则确定登录权限校验通过,将所述用户信息对应的用户登录信息确定为用户会话信息,并将所述用户会话信息存储至会话对象。
3.根据权利要求1所述的方法,其特征在于,所述网关服务接口对所述签名密钥进行校验,包括:
获取当前工作时间,判断所述预设时限是否超过当前工作时间;
在所述预设时限未超过当前工作时间的情况下,获取所述访问请求中携带的预设接口密钥,判断所述预设接口密钥与所述签名密钥是否一致;
如果一致,则签名密钥校验通过。
4.根据权利要求3所述的方法,其特征在于,还包括:在所述预设时限超过当前系统时间的情况下,签名密钥校验不通过,并返回信息错误至数据库管理后台。
5.一种业务数据访问系统,其特征在于,包括:
第一处理模块,用于利用网关代理接口接收访问请求,所述访问请求用于调用目标业务数据库,所述目标业务数据库为多个业务数据库中任一个;
第二处理模块,用于所述网关代理接口根据所述访问请求进行登录权限校验,在登录权限校验通过后,根据所述访问请求生成签名密钥,并将所述访问请求和所述签名密钥发送至网关服务接口,
所述访问请求中包括:
用户信息,所述网关代理接口根据所述访问请求进行登录权限校验,包括:所述网关代理接口利用所述用户信息在会话对象中查找对应的用户会话信息是否存在,在所述用户会话信息存在的情况下,确定登录权限校验通过,
所述访问请求中还包括:请求内容,所述在登录权限校验通过后,根据所述访问请求生成签名密钥,并将所述访问请求和所述签名密钥发送至网关服务接口,包括:
利用所述用户信息和所述请求内容,生成签名密钥,以配置对应的网络地址,包括:
将预设接口密钥、预设位数的随机字母、预设时限、用户信息及请求内容进行组合,生成消息字符串,利用预设摘要算法对所述消息字符串进行摘要,得到摘要散列码,将预设位数摘要散列码进行编码,生成签名密钥,
根据所述网络地址,将所述访问请求和所述签名密钥发送至网关服务接口,包括:
将所述访问请求中的预设替换部分替换为网络地址,得到替换后的网络地址,利用替换后的网络地址将所述访问请求和签名密钥发送至网关服务接口;
第三处理模块,用于所述网关服务接口对所述签名密钥进行校验,在签名密钥校验通过后,根据所述访问请求查找网关数据库中的网关路由信息;
第四处理模块,用于所述网关服务接口根据所述网关路由信息调用所述目标业务数据库,得到与所述访问请求对应的目标业务数据。
6.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机指令,所述计算机指令被处理器执行时实现如权利要求1-4中任一项所述的业务数据访问方法。
7.一种电子设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行如权利要求1-4中任一项所述的业务数据访问方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110181479.3A CN114915435B (zh) | 2021-02-09 | 2021-02-09 | 一种业务数据访问方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110181479.3A CN114915435B (zh) | 2021-02-09 | 2021-02-09 | 一种业务数据访问方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114915435A CN114915435A (zh) | 2022-08-16 |
CN114915435B true CN114915435B (zh) | 2024-03-19 |
Family
ID=82761391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110181479.3A Active CN114915435B (zh) | 2021-02-09 | 2021-02-09 | 一种业务数据访问方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114915435B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115589341B (zh) * | 2022-12-13 | 2023-02-17 | 云账户技术(天津)有限公司 | 一种用户无感知的平台迁移系统及方法 |
CN115604041B (zh) * | 2022-12-16 | 2023-05-09 | 深圳高灯计算机科技有限公司 | 安全代理方法、系统、装置、计算机设备和存储介质 |
CN117155649B (zh) * | 2023-08-31 | 2024-03-22 | 金锐软件技术(杭州)有限公司 | 一种第三方系统接入java网关安全防护系统及方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102695168A (zh) * | 2012-05-21 | 2012-09-26 | 中国联合网络通信集团有限公司 | 终端设备、加密网关、无线网络安全通信方法及系统 |
WO2019047513A1 (zh) * | 2017-09-05 | 2019-03-14 | 网宿科技股份有限公司 | 一种互联网防攻击方法及认证服务器 |
CN109587140A (zh) * | 2018-12-06 | 2019-04-05 | 四川长虹电器股份有限公司 | 基于openresty动态口令代理网关的实现方法 |
CN110276000A (zh) * | 2019-06-19 | 2019-09-24 | 腾讯科技(深圳)有限公司 | 媒体资源的获取方法和装置、存储介质及电子装置 |
US10476860B1 (en) * | 2016-08-29 | 2019-11-12 | Amazon Technologies, Inc. | Credential translation |
CN110661817A (zh) * | 2019-10-25 | 2020-01-07 | 新华三大数据技术有限公司 | 资源访问方法、装置及服务网关 |
CN111209578A (zh) * | 2019-12-31 | 2020-05-29 | 网联清算有限公司 | 应用服务访问方法和装置 |
CN112165454A (zh) * | 2020-09-03 | 2021-01-01 | 北京金山云网络技术有限公司 | 访问控制方法、装置、网关和控制台 |
CN112333201A (zh) * | 2020-11-20 | 2021-02-05 | 广州欢网科技有限责任公司 | 上层应用通过网关请求微服务鉴权优化系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7404084B2 (en) * | 2000-06-16 | 2008-07-22 | Entriq Inc. | Method and system to digitally sign and deliver content in a geographically controlled manner via a network |
US20080216153A1 (en) * | 2007-03-02 | 2008-09-04 | Aaltonen Janne L | Systems and methods for facilitating authentication of network devices |
US9083534B2 (en) * | 2011-01-07 | 2015-07-14 | Mastercard International Incorporated | Method and system for propagating a client identity |
-
2021
- 2021-02-09 CN CN202110181479.3A patent/CN114915435B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102695168A (zh) * | 2012-05-21 | 2012-09-26 | 中国联合网络通信集团有限公司 | 终端设备、加密网关、无线网络安全通信方法及系统 |
US10476860B1 (en) * | 2016-08-29 | 2019-11-12 | Amazon Technologies, Inc. | Credential translation |
WO2019047513A1 (zh) * | 2017-09-05 | 2019-03-14 | 网宿科技股份有限公司 | 一种互联网防攻击方法及认证服务器 |
CN109587140A (zh) * | 2018-12-06 | 2019-04-05 | 四川长虹电器股份有限公司 | 基于openresty动态口令代理网关的实现方法 |
CN110276000A (zh) * | 2019-06-19 | 2019-09-24 | 腾讯科技(深圳)有限公司 | 媒体资源的获取方法和装置、存储介质及电子装置 |
CN110661817A (zh) * | 2019-10-25 | 2020-01-07 | 新华三大数据技术有限公司 | 资源访问方法、装置及服务网关 |
CN111209578A (zh) * | 2019-12-31 | 2020-05-29 | 网联清算有限公司 | 应用服务访问方法和装置 |
CN112165454A (zh) * | 2020-09-03 | 2021-01-01 | 北京金山云网络技术有限公司 | 访问控制方法、装置、网关和控制台 |
CN112333201A (zh) * | 2020-11-20 | 2021-02-05 | 广州欢网科技有限责任公司 | 上层应用通过网关请求微服务鉴权优化系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114915435A (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114915435B (zh) | 一种业务数据访问方法及系统 | |
JP4520840B2 (ja) | 暗号化通信の中継方法、ゲートウェイサーバ装置、暗号化通信のプログラムおよび暗号化通信のプログラム記憶媒体 | |
US9756035B2 (en) | Device fingerprint registration for single sign on authentication | |
CN110213223B (zh) | 业务管理方法、装置、系统、计算机设备和存储介质 | |
EP2347559B1 (en) | Service access control | |
EP3685558B1 (en) | Access control for content delivery services | |
US11165768B2 (en) | Technique for connecting to a service | |
US11947658B2 (en) | Password generation device and password verification device | |
CN111818088A (zh) | 授权模式管理方法、装置、计算机设备及可读存储介质 | |
WO2022057002A1 (zh) | 一种异常请求处理方法和装置 | |
CN112491890A (zh) | 一种访问方法及装置 | |
CN110708328B (zh) | 一种网站静态资源防盗链方法 | |
KR20110103461A (ko) | 피어투피어 네트워크의 네트워크 노드들의 인증을 위한 방법 및 시스템 | |
KR20150099425A (ko) | 구성 관련 데이터를 검색하기 위한 네트워크 시스템 | |
CN113784354A (zh) | 基于网关的请求转换方法和装置 | |
JP6783527B2 (ja) | 電子鍵再登録システム、電子鍵再登録方法およびプログラム | |
KR20100049882A (ko) | 휴대전화기를 이용한 인터넷 뱅킹 방법 | |
CN114826692B (zh) | 信息登录系统、方法、电子设备及存储介质 | |
CN111210210A (zh) | 支付数据处理方法、装置及电子设备 | |
KR101637155B1 (ko) | 신뢰 서비스 장치를 이용한 신뢰된 아이덴티티 관리 서비스 제공 시스템 및 그 운영방법 | |
US12063215B2 (en) | Method for configuring access to an internet service | |
CN111935151B (zh) | 一种跨域统一登录方法、装置、电子设备及存储介质 | |
CN112597118B (zh) | 一种共享文件的添加方法及装置 | |
KR101203742B1 (ko) | 무선인터넷 서비스 시스템 및 방법 | |
CN117411724B (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 |