鉴权处理方法、节点及系统与流程

文档序号:11930334阅读:963来源:国知局
鉴权处理方法、节点及系统与流程

本发明涉及通信领域的鉴权技术,尤其涉及一种鉴权处理方法、节点及系统。



背景技术:

在基于客户端/服务器架构模式的业务系统中,基于安全的考虑,客户端请求服务器进行业务交互之前需要接入服务器进行鉴权,服务器对客户端进行鉴权通过后向客户端下发会话密钥,客户端利用会话密钥以加密会话的方式与服务器进行业务交互。

服务器对客户端鉴权的处理中依赖以数据库方式维护的会话密钥,对客户端的鉴权不可避免地设置数据库操作,不仅消耗服务器相当的计算资源,而且由于使用数据库来存储以及下发会话密钥,导致对客户端的鉴权严重依赖于数据库,一旦数据库崩溃将无法完成对客户端的鉴权过程。



技术实现要素:

本发明实施例提供一种鉴权处理方法、节点及系统,能够降低对客户端进行鉴权认证的资源消耗,保证鉴权服务的可靠性。

本发明实施例的技术方案是这样实现的:

第一方面,本发明实施例提供一种鉴权处理方法,所述方法包括:

管理节点向服务节点指示从网络文件系统获取待加载集合中的会话密钥;

所述服务节点在所述服务节点本地加载获取的所述待加载集合中的会话密钥;

所述管理节点获取所述服务节点在所述服务节点本地加载所述待加载集合中的会话密钥的进度,基于所述进度确定所述服务节点向客户端下发的会话密钥所对应的下发集合;

所述管理节点向所述服务节点指示所述下发集合;

所述服务节点对所述客户端鉴权,鉴权成功时为所述客户端下发所述下发集合中的会话密钥,且对不同所述客户端下发的会话密钥不同,所述会话密钥用于供鉴权成功的所述客户端与业务分发节点进行业务传输。

第二方面,本发明实施例提供一种鉴权处理方法,应用于管理节点,所述方法包括:

向服务节点指示从网络文件系统获取待加载集合中的会话密钥,并指示在所述服务节点本地加载获取的所述待加载集合中的会话密钥;

获取所述服务节点在所述服务节点本地加载所述待加载集合中的会话密钥的进度;

基于所述进度确定所述服务节点向客户端下发的会话密钥所对应的下发集合;

向所述服务节点指示所述下发集合,并指示所述服务节点对所述客户端鉴权成功时为相应客户端下发所述下发集合中的会话密钥,且对不同所述客户端下发的会话密钥不同,所述会话密钥用于供鉴权成功的所述客户端与业务分发节点进行业务传输。

第三方面,本发明实施例提供一种鉴权处理方法,应用于服务节点,所述方法包括:

获取管理节点指示的会话密钥的待加载集合;

从网络文件系统获取所述待加载集合中的会话密钥,加载获取的所述待加载集合中的会话密钥;

向所述管理节点上报加载所述待加载集合中的会话密钥的进度;

获取所述服务节点指示的下发集合;

对客户端鉴权成功时为所述客户端下发所述下发集合中的会话密钥,且对不同所述客户端下发的会话密钥不同,所述会话密钥用于供所述客户端与业务分发节点进行业务传输。

第四方面,本发明实施例提供一种鉴权处理系统,所述系统包括:管理节点和服务节点;其中,

所述管理节点,用于向所述服务节点指示从网络文件系统获取待加载集合中的会话密钥;

所述服务节点,用于在所述服务节点本地加载获取的所述待加载集合中的会话密钥;向所述管理节点上报所述服务节点在所述服务节点本地加载所述待加载集合中的会话密钥的进度;

所述管理节点,还用于基于所述进度确定所述服务节点向客户端下发的会话密钥所对应的下发集合;向所述服务节点指示所述下发集合;

所述服务节点,用于对所述客户端鉴权,鉴权成功时为所述客户端下发所述下发集合中的会话密钥,且对不同所述客户端下发的会话密钥不同,所述会话密钥用于供鉴权成功的所述客户端与业务分发节点进行业务传输。

第五方面,本发明实施例提供一种管理节点,所述管理节点包括:

待加载集合单元,用于向服务节点指示从网络文件系统获取待加载集合中的会话密钥,并指示在所述服务节点本地加载获取的所述待加载集合中的会话密钥;

第一获取单元,用于获取所述服务节点在所述服务节点本地加载所述待加载集合中的会话密钥的进度;

下发集合单元,用于基于所述进度确定所述服务节点向客户端下发的会话密钥所对应的下发集合;

第一下发单元,用于向所述服务节点指示所述下发集合,并指示所述服务节点对所述客户端鉴权成功时为所述客户端下发所述下发集合中的会话密钥,且对不同所述客户端下发的会话密钥不同,所述会话密钥用于供鉴权成功的所述客户端与业务分发节点进行业务传输。

第六方面,本发明实施例提供一种服务节点,所述服务节点包括:

第二获取单元,用于获取管理节点指示的会话密钥的待加载集合,从网络文件系统获取所述待加载集合中的会话密钥;

加载单元,用于加载获取的所述待加载集合中的会话密钥;

上报单元,用于向所述管理节点上报加载所述待加载集合中的会话密钥的进度;

所述第二获取单元,还用于获取所述管理节点指示的下发集合;

第二下发单元,用于对客户端鉴权,鉴权成功时为所述客户端下发所述下发集合中的会话密钥,且对不同所述客户端下发的会话密钥不同,所述会话密钥用于供所述客户端与业务分发节点进行业务传输。

本发明实施例具有以下有益效果:通过指示服务节点将会话密钥在会话密钥本地加载,在服务节点需要对鉴权成功的客户端下发会话密钥时直接将加载的会话密钥下发至客户端即可,无需由服务节点生成会话密钥因而降低了对服务节点的资源消耗;同时,也无需执行数据库操作以将会话密钥下发至客户端,避免了鉴权处理依赖数据库的情况,保证了鉴权处理的稳定性。

附图说明

图1-1是本发明实施例提供的鉴权处理系统的一个可选的结构示意图;

图1-2是本发明实施例提供的对客户端进行鉴权处理的一个可选的流程示意图;

图2-1是本发明实施例提供的鉴权处理系统的一个可选的结构示意图;

图2-2是本发明实施例提供的对客户端进行鉴权处理的一个可选的流程示意图;

图2-3是本发明实施例提供的确定会话密钥的待下发集合以及下发集合的的一个可选的流程示意图;

图3-1是本发明实施例提供的客户端、接入节点和业务分发节点进行业务交互的一个实现示意图;

图3-2是本发明实施例提供的客户端、接入节点和业务分发节点中的逻辑功能模块在实现业务交互时的一个可选的示意图;

图3-3是本发明实施例提供的客户端、接入节点和业务分发节点实现业务交互时的一个可选的流程示意图;

图4是本发明实施例提供的管理节点、接入节点和鉴权节点的一个可选的功能结构示意图。

具体实施方式

以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所提供的实施例仅仅用以解释本发明,并不用于限定本发明。另外,以下所提供的实施例是用于实施本发明的部分实施例,而非提供实施本发明的全部实施例,在不冲突的情况下,本发明实施例记载的技术方案可以任意组合的方式实施。

本发明实施例中涉及的名词和术语适用于如下的解释。

客户端,是指与服务器相对应,为用户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在用户侧的终端设备上,需要与服务器互相配合运行

客户端设备,用户侧运行客户端的设备,如智能手机、平板电脑、笔记电脑和台式机电脑,需要说明的是,本发明实施例中后续描述的客户端为客户端设备及其运行的客户端的组合。

鉴权,是指通过一定的手段,完成对用户身份的确认,又称身份验证。鉴权的目的是确认当前所声称为某种身份的用户,确实是所声称的用户。鉴权一词更多地被用在计算机、通信等领域。鉴权的方法基本上可分为:基于共享密钥、基于生物学特征和基于公开密钥加密算法。不同的鉴权方法,安全性也不同。

基于公开密钥加密算法的身份验证:基于公开密钥加密算法的身份验证是指通信中的双方分别持有公开密钥和私有密钥,由其中的一方采用私有密钥对特定数据进行加密,而对方采用公开密钥对数据进行解密,如果解密成功,就认为用户是合法用户,否则就认为是身份验证失败。

非对称加密算法,包含两个密钥:公开密钥(Public Key,简称公钥)和私有密钥(Private Key,简称私钥),特点:算法强度复杂、安全性依赖于算法与密钥但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快。

会话密钥(Session Key):是用于一个通信会话加密的密钥,有时称对称密钥,因为同一密钥用于加密和解密。

接入服务,广义上指统一接受客户端请求,并根据请求协议字段将请求转发给相关的业务分发节点,一般包含通用功能:统一监控统计功能、转发策略、拒绝策略、协议加解密策略。

接入节点,服务器中对客户端提供上述的接入服务的节点,例如,根据转发策略将来自客户端的鉴权请求转发到鉴权节点进行处理。

鉴权节点,对客户端进行鉴权的节点,接入节点和鉴权节点也称为服务节点。

业务分发节点,对于鉴权成功的客户端的业务请求进行响应,向客户端进行业务分发的节点,业务分发节点与服务节点可由服务器或服务器的集群实现。

网络文件系统(NFS,Network File System):是一种分布式文件系统协议的网络文件系统,允许客户端可以像访问本地存储一样通过网络访问节点端的数据。

发明人在实施本发明的过程中发现,为了保证客户端与业务分发节点之间传输数据业务的安全性,如果为每个鉴权成功的客户端分配不同的会话密钥,供客户端与业务分发节点对传输的业务数据进行加密,则将能显著提供安全性,但是,会话密钥如果由鉴权节点根据来自客户端的鉴权请求生成并下发至客户端,则由于依赖于数据库存储会话密钥并向客户端下发,导致鉴权处理的稳定性收到数据库影响,同时,对鉴权节点的计算资源造成较大消耗,下面结合对客户端的鉴权处理过程进行说明。

参见图1-1示出的本发明实施例中提供的鉴权处理系统的一个可选的结构示意图,以及图1-2示出的本发明实施例中提供的对客户端进行鉴权处理的一个可选的流程示意图。

在一个实施例中,客户端10为客户端设备中运行的任意与相应服务器进行交互以获取业务的应用,本发明实施例中对客户端10的类型不做限定。示例性地,客户端10可以为管理类型的应用,如智能手机中运行的手机管家应用,电脑中运行的电脑管家应用等。

客户端10为客户端设备提供杀毒、清理加速以及漏洞修复等功能,客户端10针对用户在客户端10中所选择使用的功能,向接入节点20请求进行鉴权,并在鉴权成功后向业务分发节点50请求与用户所选择使用功能相应的业务,与业务分发节点50以加密会话的形式进行业务交互,从而保证业务的安全性。

在图1-1和图1-2中涉及的鉴权处理系统包括接入节点20、鉴权节点30、业务分发节点50和管理节点60,实际应用中接入节点20对多个客户端提供接入服务,在图1-1和图1-2中以对一个客户端进行鉴权的处理过程进行说明,包括以下步骤:

步骤101,客户端10向接入节点20发起鉴权请求。

在一个实施例中,当用户在客户端10中触发选择功能时,客户端10向提供接入服务的接入节点20发送鉴权请求。示例性地,鉴权请求中可以携带客户端10的相关信息如客户端10的标识,另外,鉴权请求使用非对称加密算法的公钥加密。

步骤102,接入节点20将鉴权请求转发到鉴权节点30。

步骤103,鉴权节点30使用非对称解密私钥解密鉴权请求,如解密成功则鉴权通过,执行步骤104,否则,经由接入节点20向客户端10返回鉴权失败。

步骤104,鉴权节点30在对客户端10鉴权成功时生成会话密钥。

步骤105,鉴权节点30针对客户端10生成的会话密钥,向数据库40发起存储请求。

在一个实施例中,为了保证后续客户端10与业务分发节点50进行业务交互的安全性,鉴权节点30针对不同的客户端对应生成不同的会话密钥,从而,较相关技术由不同的客户端复用与业务分发节点50之间通信的会话密钥的方案,能够明显提升安全性。

由于针对每个客户端对应生成不同的密钥,因此鉴权节点30生成的会话密钥的数量与请求鉴权的客户端10的数量是线性相关的关系,请求鉴权的客户端的数量越多则需要的会话密钥的数量越多。

示例性地,由于接入节点20和鉴权节点30会针对多个客户端10进行鉴权并由鉴权节点30生成相应的会话密钥,鉴权节点30向密钥数据库40发起的存储请求中客户端10的标识区分针对不同客户端10生成的会话密钥。

步骤106,数据库40响应存储请求存储会话密钥。

示例性地,数据库40以客户端10的标识-会话密钥这样的形式存储针对不同客户端10的会话密钥。

步骤107,接入节点20向数据库40查询针对客户端10的会话密钥。

示例性地,数据库40以查询请求中携带的客户端10的标识在本地查询鉴权节点30是否已经为相应的客户端10生成会话密钥。

步骤108,作为对客户端10发起的鉴权请求鉴权成功的响应,接入节点20将所查询到的针对客户端10的会话密钥返回客户端10。

步骤109,客户端10基于会话密钥经由接入节点20与业务分发节点50进行业务交互。

结合本发明实施例中上述提供的方案可以看出,由于采用了为客户端10下发的会话密钥与客户端10的数量线性相关的方案,也就是每个鉴权成功的客户端10下发的会话密钥均不同,这就有效保证了后续业务交互过程中数据传输的安全性。

同时,发明人在实施本发明的过程中还发现,上述方案还存在以下问题:

1)为安全考虑为不同客户端下发的会话密钥不同,也就是数据库40中存储的会话密钥的数量与客户端数量线性相关,在海量客户端的情形下,导致数据库40的存储量大,维护难度高。

2)处理效率有待提高,鉴权节点30对客户端10的认证本身就需要使用非对称加密算法,已经对鉴权节点30的计算资源造成相当的消耗,同时,鉴权节点30向客户端10下发会话密钥使还涉及到对数据库40的操作,进一步降低了鉴权节点30自身对客户端10鉴权的响应处理能力。

3)对客户端10的鉴权依赖于存储会话密钥的数据库40的操作,一旦数据库40不可访问,将导致无法经由数据库40对客户端10下发会话密钥,最终影响客户端10的业务获取。

针对上述问题,本发明实施例还提供一种鉴权处理方法以及鉴权处理系统,参见图2-1示出的鉴权处理系统的一个可选的结构示意图,包括接入节点20、鉴权节点30、业务分发节点50和管理节点60。下面对接入节点20、鉴权节点30、业务分发节点50和管理节点60对客户端10进行鉴权以及业务分发所涉及的处理进行说明。

在一个实施例中,在接入节点20和鉴权节点30对客户端10进行鉴权之前,接入节点20与鉴权节点30本地的缓存资源(如内存)中已经从网络文件系统50预先加载有可以向客户端10下发的会话密钥,这样在鉴权节点30对客户端10鉴权成功后可以在所加载的会话密钥中选择会话密钥下发给客户端10,因此即使数据库40出现拖库(崩溃),由于不依赖于数据库40操作,对客户端10的鉴权也不会受到影响,从而保证了鉴权的稳定性。并且,当为每个鉴权成功的客户端分配的会话密钥不同时,还能显著增强安全性。

下面结合图2-1示出的本发明实施例中提供的鉴权处理系统的一个可选的结构示意图,以及图2-2示出的本发明实施例中进行鉴权的一个可选的流程示意图进行说明。

实际应用中图2-1中示出的服务节点(包括接入节点20和鉴权节点30)可用于对多个客户端提供鉴权服务,在图2-1和图2-2中以对一个客户端进行鉴权的过程进行说明,对于多个客户端进行鉴权的处理可以参照以下记载而实施,包括以下步骤:

步骤201,管理节点60向接入节点20和鉴权节点30指示从网络文件系统50获取待加载集合中的会话密钥。

在一个实施例中,接入节点20和鉴权节点30通过运行网络文件系统50的客户端应用可以透明地读写位于网络文件系统50上的文件,与接入节点20和鉴权节点30访问本地文件的效果一样,也就是网络文件系统50对接入节点20和鉴权节点30提供与本地文件一样的访问方式。

示例性地,为高效描述会话密钥的集合(包括会话密钥的待加载集合以及会话密钥的下发集合),会话密钥的集合以集合中会话密钥在网络文件系统50的分布范围表征。分布范围可以是连续的分布范围如NL1->NL2,表示网络文件系统50中存储第NL1(大于1的任意整数)个至第NL2(大于NL1的整数)个会话密钥,当然,待加载集合也可以是网络文件系统50中离散分布的会话密钥。

在一个实施例中,管理节点60根据接入节点20和鉴权节点30本地用于加载会话密钥的资源数量、以及客户端的鉴权请求的历史并发数量至少之一,确定待加载集合中的会话密钥的数量,能够保证接入节点20和鉴权节点30用于在本地加载会话密钥的内存资源被过多占用导致无法运行,确保服务的稳定性。另外,待加载集合中会话密钥的数量大于来自客户端的鉴权请求的最大历史并发数量,这就能够避免因客户端数量过大导致没有可用的会话密钥向客户端下发的情况,确保对客户端进行鉴权的处理效率。

示例性地,接入节点20和鉴权节点30的内存资源的使用率与内存资源中加载的会话密钥的数量正相关,管理节点60基于接入节点20和鉴权节点30的内存资源的最大使用率(服务节点的内存资源中可用于加载会话密钥的最大比例)确定会话密钥的可加载数量,并在网络文件系统50中加载与可加载数量一致(或小于可加载数量)的会话密钥的待加载集合。

步骤202,接入节点20和鉴权节点30在本地加载获取的待加载集合中的会话密钥。

在一个实施例中,对于接入节点20和鉴权节点30中的任一服务节点,基于管理节点60所指示的待加载集合中的会话密钥在网络文件系统50的分布范围,以与访问本地方式一样的方式访问网络文件系统50,获取相应分布范围中的会话密钥并在本地内存资源中加载。

步骤203,接入节点20和鉴权节点30向管理节点60上报在本地加载待加载集合中的会话密钥的进度。

在一个实施例中,管理节点60指示向接入节点20和鉴权节点30指示待加载集合时,也就是指示待加载集合中的会话密钥在网络文件系统50中的分布范围如NL1->NL2,还接入节点20和鉴权节点30向管理节点60上报在本地加载待加载集合中的会话密钥的进度,由接入节点20和鉴权节点30向管理节点60上待加载集合中会话密钥在相应服务节点的加载进度情况。或者,当接入节点20和鉴权节点30获取到管理节点60指示的待加载集合时,管理节点60也可以只需向接入节点20和鉴权节点30指示待加载集合,而由接入节点20和鉴权节点30主动向管理节点60上报会话密钥的加载进度情况。

例如,这里的进度可以为实时进度,也就是在每个会话密钥加载完成后即上报相应的进度,为了减小资源的消耗,接入节点20和鉴权节点30可以将待加载集合中每个批次的会话密钥(例如每个批次可以包括100个会话密钥)加载完毕时向管理节点60上报相应批次的会话密钥加载完毕,实际应用中,批次的数量以及每个批次包括的会话密钥的数量可以由管理节点60分别向接入节点20和鉴权节点30指示,或者由管理节点60分别与接入节点20和鉴权节点30协商确定,又或者由接入节点20和鉴权节点30自动确定。

步骤204,管理节点60基于进度确定接入节点20和鉴权节点30能够向客户端10下发的会话密钥所对应的下发集合。

在一个实施例中,适用于这样的场景,对于管理节点60向接入节点20和鉴权节点30指示的待加载集合,接入节点20和鉴权节点30尚未将待加载集合中的会话密钥在本地加载完毕,此时如果不存在请求鉴权的客户端10,也就是未有客户端10请求接入节点20,则管理节点60可以不向接入节点20和鉴权节点30指示下发集合,当有客户端10向接入节点20发起鉴权请求时,向接入节点20和鉴权节点30指示下发集合,以避免与接入节点20、鉴权节点30之间的频繁交互而造成资源的消耗。

当然,管理节点60也可以忽略是否有客户端发起鉴权请求的情况,每当获取到来自接入节点20以及鉴权节点30发送的进度时即根据进度确定下发集合,以在后续步骤205中向接入节点20和鉴权节点30指示下发集合,从而确保在有客户端发起鉴权请求时,能够对鉴权成功的客户端10即时下发会话密钥,保证了对客户端10进行鉴权的效率。

以下对管理节点60确定下发集合的不同方式进行说明。

方式1)基于进度表征的待加载集合中的已加载的会话密钥,确定由部分获取全部已加载的会话密钥形成下发集合。

基于接入节点20以及鉴权节点30分别加载待加载集合中的会话密钥的进度,确定已经被接入节点20和鉴权节点30共同加载的会话密钥形成下发集合,示例性地,下发集合可以是接入节点20和鉴权节点30共同加载的会话密钥,也可以是接入节点20和鉴权节点30共同加载的会话密钥中的部分。

例如,假设待加载集合中的会话密钥在网络文件系统50中的分布范围为NL1->NL2,基于接入节点20和鉴权节点30的进度确定接入节点20和鉴权节点30已经加载了分布范围NL1->NL2中如下分布范围的会话密钥:A1->A2,则确定的下发集合中的会话密钥在网络文件系统50中的分布范围为L1->L2,L1->L2为A1->A2(也是NL1->NL2)的一个子集。

方式2)基于进度确定的待加载集合中的已加载的会话密钥形成的已加载集合,确定由至少部分的已加载集合和至少部分的历史集合形成的下发集合;其中,历史集合包括接入节点20和鉴权节点30在加载待加载集合之前已经加载的会话密钥。

例如,假设待加载集合中的会话密钥在网络文件系统50中的分布范围为NL1->NL2,接入节点20和鉴权节点30在此之前均已经在加载了分布范围为NL3->NL4的会话密钥,基于接入节点20和鉴权节点30的进度确定接入节点20和鉴权节点30已经加载了分布范围NL1->NL2中如下分布范围的会话密钥:A1->A2,则确定的下发集合中的会话密钥在网络文件系统50中的分布范围L1->L2,可以为A1->A2、以及NL3->NL4中的任意部分的会话密钥。

方式3)基于进度确定的待加载集合中的已加载的会话密钥形成的已加载集合,确定由至少部分的已加载集合和至少部分的历史集合形成的下发集合;其中,历史集合包括接入节点20和鉴权节点30在加载待加载集合之前已经加载的会话密钥。

步骤205,管理节点60向接入节点20和鉴权节点30指示下发集合。

如前,下发集合可以采用下发集合中的会话密钥在网络文件系统50中的分布范围的形式描述,如A1->A2。

在一个实施例中,管理节点将下发集合中会话密钥在网络文件系统50的分布范围、以及待加载集合中会话密钥在网络文件系统50的分布范围存储至数据库40保存,这样,在管理节点60初始化(例如因故障而重新初始化时)可以从数据库的恢复待加载集合和下发集合的分布范围信息。

例如,如图2-3所示,管理节点60向接入节点20和鉴权节点30指示待加载集合中会话密钥网络文件系统50的分布范围NL1->NL2,接入节点20和鉴权节点30在加载的过程当中向管理节点60上报加载的进度,也就是已经加载会话密钥在网络文件系统50的分布范围L1->L2,管理节点60基于接入节点20和鉴权节点30已经加载的待加载集合中的会话密钥,确定鉴权节点30本地加载的会话密钥中可以向客户端下发会话密钥的集合A1->A2,示例性地,其中A1->A2可以是L1->L2的子集。

步骤206,接入节点20接收来自客户端10的鉴权请求,将鉴权请求转发至鉴权节点30。

步骤207,鉴权节点30使用非对称解密私钥解密鉴权请求,如解密成功则鉴权通过,执行步骤209,否则,执行步骤208。

步骤208,鉴权节点30经由接入节点20向客户端10发送鉴权失败结果。

步骤209,鉴权节点30将加载的会话密钥中属于下发集合中的会话密钥下发至客户端10。

在一个实施例中,鉴权节点30为每个鉴权成功的客户端下发位于下发集合中的不同会话密钥,从而保证后续客户端基于会话密钥与业务分发节点50之间传输业务的安全性。

下面再对客户端10获得会话密钥之后发起业务请求并得到业务响应的过程进行说明,示例性地,当用户通过客户端10请求的业务为漏洞修复时,业务请求中可以携带客户端10的版本信息,由业务分发节点50返回的业务响应可以为漏洞的修复文件。

在一个实施例中,对客户端10鉴权成功后,客户端10使用会话密钥经由接入节点20和业务分发节点50进行业务交互的处理进行说明。

参见图3-1示出的客户端10、接入节点20和业务分发节点50进行业务交互的一个实现示意图。客户端10中包括业务层用于形成业务请求的明文数据,以及客户端10协议加固模块,用于提供基于会话密钥的加密处理功能和解密处理功能。接入节点20包括接入服务加固处理模块以提供基于会话密钥的加密处理功能和解密处理功能。业务分发节点50运行业务服务提供业务请求的接受处理功能以及针对业务请求的响应回包功能(也就是返回承载业务响应的数据包)。

需要指出的是,图3-1仅仅是示例性示出了客户端10、接入节点20和业务分发节点50中与业务交互处理相关的部分逻辑功能模块,并未唯一的逻辑功能结构的实现形式,也并未非客户端10、接入节点20和业务分发节点50的全部逻辑功能模块,对客户端10、接入节点20和业务分发节点50的功能模块进行进一步拆分或者合并,从而实现与图3-1不同的逻辑功能结构。

以下,结合再图3-2示出的客户端10、接入节点20和业务分发节点50中的逻辑功能模块在实现业务交互时的一个可选的示意图、以及图3-3示出的客户端10、接入节点20和业务分发节点50实现业务交互时的一个可选的流程示意图进行说明,参见图3-3,包括以下步骤:

步骤301,客户端10向接入节点20发起业务请求。

在一个实施例中,客户端10以发起鉴权请求后由接入节点20返回的会话密钥对业务请求进行加密,示例性地,业务请求中可以携带客户端10所请求的业务的标识、以及所请求业务的相关描述信息。为了使接入节点20区分来自不同客户端10的业务请求,客户端10可以将明文形式的客户端10的标识连同加密后的业务请求一起发送给接入节点20。

另外需要说明的是,在图3-1仅示例性示出了一个业务分发节点,实际应用中可以设置有多个业务分发节点50,各业务分发节点用于定向对特定的客户端10进行业务分发,或者各业务分发节点用于对定向对客户端10所请求的特定业务进行业务分发。

示例性地,再结合图3-2对上述步骤的实现进行说明,客户端10的业务层根据用户在客户端10的图形界面中选定的需要使用的业务形成业务请求,向客户端10协议加固模块请求业务响应的明文数据,客户端10协议加固模块基于会话密钥对业务请求进行加密,并通过网络传输至接入节点20。

步骤302,接入节点20对所接收的业务请求进行解密处理并发送解密的业务请求至业务分发节点50。

在一个实施例中,接入节点20对来自客户端10的业务请求进行解密,将解密后的业务请求转发到相应的业务分发节点50以请求业务响应数据。示例性地,接入节点20基于与业务请求共同传输而来的客户端10标识确定为相应客户端10下发的会话密钥,利用会话密钥对业务请求进行解密,将解密后业务请求转发至业务分发节点50。

示例性地,再结合图3-2对上述步骤进行说明,接入节点20运行的接入服务协议加固模块利用客户端10所拥有的会话密钥对来自客户端10的业务请求进行解密,将解密后的业务请求转发至业务分发节点50。

步骤303,业务分发节点50向接入节点20发送业务响应。

在一个实施例中,业务分发节点50对解密的业务请求进行响应处理,基于请求业务的标识以及请求业务的相关描述信息,形成明文形式的业务响应的数据。

示例性地,再结合图3-2进行说明,业务分发节点50运行的业务服务对解密的业务请求进行处理,形成明文形式的业务响应的数据,发送至接入节点20。

步骤304,接入节点20对来自业务分发节点50的业务响应进行加密处理。

在一个实施例中,对于来自业务分发节点50的明文形式的业务响应(示例性地,还可以包括相应客户端10的标识),接入节点20基于为客户端10下发的会话密钥(示例性地,可以基于与业务请求响应中的客户端10的标识确定)进行加密。

再结合图3-2对上述步骤进行说明,示例性地,接入节点20运行的接入服务协议加固模块明文形式的业务请求响应基于会话密钥进行加密。

步骤305,接入节点20将加密的业务响应发送至客户端10。

在一个实施例中,接入节点20基于明文形式的业务响应中携带的客户端10的标识,将加密的业务相应通过网络传输中客户端10。

步骤306,客户端10对接收的业务请求响应利用会话密钥进行解密。

结合图3-2对步骤306进行说明,客户端10协议加固模块对业务请求以会话密钥进行解密,得到明文形式的业务响应的数据,传输至业务层由业务层基于业务响应的数据进行处理。

结合上述方案可以看出:

1)为安全考虑为不同客户端下发的会话密钥不同,并且会话密钥可以在网络文件系统中预先存储,由管理节点根据需要指示接入节点和鉴权节点加载,在鉴权节点对客户端鉴权成功时将在本地加载的下发集合中的会话密钥下发至客户端,以接入节点对本地内存操作替换为数据库操作,易于维护,且稳定性高。

2)不涉及到对数据库40的操作,降低了鉴权节点30自身对客户端10鉴权的响应处理能力。

3)对客户端10的鉴权不依赖于存储会话密钥的数据库40的操作,一旦数据库40不可访问,也不会对客户端的鉴权造成影响。

在一个实施例中,对管理节点60的功能结构进行说明,参见图4示出的管理节点60的一个可选的功能结构示意图,包括:

待加载集合单元61,用于向服务节点指示从网络文件系统50获取待加载集合中的会话密钥,并指示在服务节点本地加载获取的待加载集合中的会话密钥;

第一获取单元62,用于获取服务节点在服务节点本地加载待加载集合中的会话密钥的进度;

下发集合单元63,用于基于进度确定服务节点能够向客户端10下发的会话密钥所对应的下发集合;

第一下发单元64,用于向服务节点指示下发集合,并指示服务节点对客户端10鉴权成功时为相应客户端10分配下发集合中的会话密钥,且对不同客户端10下发的会话密钥不同,会话密钥用于供鉴权成功的客户端10与业务分发节点50进行业务传输。

在一个实施例中,待加载集合单元61,还用于指示服务节点在加载完成待加载集合中任一批次的会话密钥时,发送相应批次的会话密钥加载完成的进度。

在一个实施例中,下发集合单元63,还用于当服务节点包括接入节点20、以及鉴权节点30至少两个节点时,基于接入节点20以及鉴权节点30分别加载待加载集合中的会话密钥的进度,确定已经被接入节点20和鉴权节点30共同加载的会话密钥形成下发集合。

在一个实施例中,下发集合单元63,还用于基于进度表征的待加载集合中的已加载的会话密钥,确定由至少部分已加载的会话密钥形成的下发集合。

在一个实施例中,下发集合单元63,还用于基于进度确定的待加载集合中的已加载的会话密钥形成的已加载集合,确定由至少部分的已加载集合和至少部分的历史集合形成的下发集合;

其中,历史集合包括服务节点在加载待加载集合之前已经加载的会话密钥。

在一个实施例中,下发单元64,还用于当基于确定服务节点在未加载完毕待加载集合时,判断服务节点是否需要对客户端10进行鉴权,若需要则确定下发集合,否则,直至待加载集合被加载完毕时确定下发集合。

在一个实施例中,管理节点60还包括:

记录单元65,用于在数据库40记录待加载集合、以及下发集合中的会话密钥在网络文件系统的分布范围;

当初始化时从数据库40获取待加载集合以及下发集合。

在一个实施例中,待加载集合单元61,还用于根据服务节点基于本地的缓存资源能够加载的会话密钥的数量、以及客户端10的鉴权请求的发起量至少之一,确定待加载集合中的会话密钥在网络文件系统50的分布范围。

在一个实施例中,对接入节点20的功能结构进行说明,参见图4示出的接入节点20的一个可选的功能结构示意图,包括:

第二获取单元21,用于获取管理节点60指示的会话密钥的待加载集合,从网络文件系统50获取待加载集合中的会话密钥;

加载单元22,用于加载获取的待加载集合中的会话密钥;

上报单元23,用于向管理节点60上报加载待加载集合中的会话密钥的进度;

第二获取单元21,还用于获取管理节点60指示的下发集合;

第二下发单元24,用于对客户端10鉴权,鉴权成功时为客户端10分配下发集合中的会话密钥,且对不同客户端10下发的会话密钥不同,会话密钥用于供客户端10进行业务传输。例如,对来自客户端10的鉴权请求转发至鉴权节点30,由鉴权节点30基于非对称加密算法私钥进行解密,将鉴权节点30解密成功时下发的会话密钥转发至客户端10。

业务分发单元25,用于基于向客户端10下发的会话密钥对来自客户端10的业务请求解密,将解密后的业务请求发送业务分发节点50,基于向所述客户端下发的会话密钥将所述业务分发节点生成的业务响应加密,将加密后的业务响应发送至客户端10。

在一个实施例中,对鉴权节点30的功能结构进行说明,参见图4示出的鉴权节点30的一个可选的功能结构示意图,包括:

第二获取单元31,用于获取管理节点60指示的会话密钥的待加载集合,从网络文件系统50获取待加载集合中的会话密钥;

加载单元32,用于加载获取的待加载集合中的会话密钥;

上报单元33,用于向管理节点60上报加载待加载集合中的会话密钥的进度;

第二获取单元31,还用于获取管理节点60指示的下发集合;

第二下发单元34,用于对客户端10鉴权,鉴权成功时为客户端10分配下发集合中的会话密钥,且对不同客户端10下发的会话密钥不同,会话密钥用于供客户端10进行业务传输。例如,对来接入节点20转发来的来自客户端10的鉴权请求基于非对称加密算法私钥进行解密,解密成功时确定鉴权成功,经由接入节点20下发会话密钥至客户端10。

在一个实施例中,鉴权节点30还包括:

业务分发单元35,用于基于向客户端10下发的会话密钥对来自客户端10的业务请求解密,基于向客户端10下发的会话密钥将生成的业务响应加密,将加密后的业务响应发送至客户端10。

图4示出的功能模块仅仅是逻辑功能的示例性划分,基于图4示出的功能模块可以轻易进行功能模块的进一步划分或者合并。另外,各功能模块可以由服务器(如服务器或服务器集群)的硬件资源,如处理器等计算资源、通信资源(如用于支持实现光缆、蜂窝等各种方式通信)协同实现。在服务器的一个可选的硬件结构中,包括处理器、输入/输出接口(例如显示器、键盘、触摸屏、扬声器麦克风中的一个或多个),存储介质以及网络接口,组件可以经系统总线通信,其中,存储介质中存储有可执行指令,用于执行本发明实施例提供的鉴权处理方法。

对前述实施例记载的鉴权处理系统的功能结构进行说明,参见图3-1示出的鉴权处理系统的一个可选的功能结构示意图,包括:

管理节点60,用于向接入节点20和鉴权节点30指示从网络文件系统50获取待加载集合中的会话密钥;

接入节点20和鉴权节点30,用于在本地加载获取的待加载集合中的会话密钥;

管理节点60,用于获取接入节点20和鉴权节点30在本地加载待加载集合中的会话密钥的进度,基于进度确定服务节点能够向客户端10下发的会话密钥所对应的下发集合;

管理节点60,用于向接入节点20和鉴权节点30指示下发集合;

鉴权节点30,用于对客户端10鉴权,鉴权成功时经由接入节点20向客户端10分配下发集合中的会话密钥,且对不同客户端10下发的会话密钥不同,会话密钥用于供鉴权成功的客户端10与业务分发节点50进行业务传输。

在一个实施例中,管理节点60还用于指示接入节点20和鉴权节点30在加载完成待加载集合中任一批次的会话密钥时,发送相应批次的会话密钥加载完成的进度。

在一个实施例中,管理节点60还用于基于接入节点20和鉴权节点30分别加载待加载集合中的会话密钥的进度,确定已经被接入节点20和鉴权节点30共同加载的会话密钥形成下发集合。

在一个实施例中,管理节点60基于进度表征的待加载集合中的已加载的会话密钥,确定由至少部分已加载的会话密钥形成的下发集合。

在一个实施例中,管理节点60基于进度确定的待加载集合中的已加载的会话密钥形成的已加载集合,确定由至少部分的已加载集合和至少部分的历史集合形成的下发集合;

其中,历史集合包括接入节点20和鉴权节点30在加载待加载集合之前已经加载的会话密钥。

在一个实施例中,管理节点60基于进度确定的待加载集合中的已加载的会话密钥形成的已加载集合,确定由至少部分的已加载集合和至少部分的历史集合形成的下发集合;其中,历史集合包括接入节点20和鉴权节点30在加载待加载集合之前已经加载的会话密钥。

在一个实施例中,当管理节点60基于进度确定接入节点20和鉴权节点30在未加载完毕待加载集合时,判断接入节点20和鉴权节点30是否需要对客户端10进行鉴权,若需要则确定下发集合,否则,直至待加载集合被加载完毕时指示下发集合。

在一个实施例中,管理节点60在数据库40记录待加载集合、以及下发集合中的会话密钥在网络文件系统的分布范围;

当初始化时基于从数据库40获取的分布范围确定待加载集合以及下发集合。

在一个实施例中,管理节点60根据接入节点20和鉴权节点30本地用于加载会话密钥的资源数量确定待加载集合中的会话密钥的数量、以及在网络文件系统50的分布范围。

在一个实施例中,接入节点20用于接收来自客户端10的鉴权请求并转发至鉴权节点30;鉴权节点30用于以非对称加密算法对来自客户端10的鉴权请求解密,解密成功时确定鉴权成功,经由接入节点20向客户端10下发会话密钥。

在一个实施例中,接入节点20用于基于鉴权节点30向客户端10下发的会话密钥对来自客户端10的业务请求解密,将解密后的业务请求转发至相应的业务分发节点50;接入节点20基于向客户端10下发的会话密钥将业务分发节点50生成的业务响应加密,将加密后的业务响应发送至客户端10。

综上所述,本发明实施例具有以下有益效果:

1)安全性高:连续动态更新会话密钥,消除被拖库风险

2)存储量小:会话密钥数量控制灵活,使用网络文件系统存储成本低,易于管理维护。

3)对数据库的依赖降低、管理节点只在存储待加载集合和下发集合的信息时才依赖外部数据,向客户端下发会话密钥的处理本身不依赖外部的数据库服务。

4)服务效率高:会话密钥的获取由通过网络请求第三方服务变成了本地内存操作。

本领域的技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储装置、随机存取存储器(RAM,Random Access Memory)、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机、节点、或者网络装置等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储装置、RAM、ROM、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1