一种数据同步方法及装置与流程

文档序号:22623587发布日期:2020-10-23 19:30阅读:116来源:国知局
一种数据同步方法及装置与流程

本申请涉及通信技术领域,尤其涉及一种数据同步方法及装置。



背景技术:

目前第四代移动通信技术(the4thgenerationmobilecommunicationmobilecommunicationtechnology,4g)网络已经比较成熟,新建的第五代移动通信技术(5th-generation,5g)网络在相当长一段时间内将与4g网络并存,产生不同网络覆盖交接的地区。用户在5g网络与4g网络之间来回切换将产生附着以及业务不连续等问题。

在4g系统中,根密钥是在归属签约用户服务器(homesubscriberserver,hss)中保存的,其他非接入层(non-accessstratum,nas)以及接入层(accessstratum,as)层密钥都根据根密钥推衍生成;在5g系统中,鉴权过程所用的最基础的根密钥在统一数据管理(unifieddatamanagement,udm)中保存,并由udm根据根密钥推衍出加密密钥(cipherkey,ck)、完整性保护密钥(integritykey,ik),并根据不同的算法进行初步的密钥推衍。在4g与5g系统中,和用户对应的根密钥的形式是一样的,但是密钥的推衍算法以及输入参数存在不同,需要在各自系统中进行进一步计算以及交互验证。

如果是4g用户,需要在4g的hss中进行用户根密钥数据的配置,并在全球用户识别卡(universalsubscriberidentitymodule,usim)卡中配置同样的参数;如果用户附着在4g,根密钥之后的推衍需要在手机中进行,在5g系统中的udm也需要保存该用户的鉴权安全相关的参数,并使用这些信息进行密钥推衍。但用户在4g与5g覆盖区域移动以及切换时,4g核心网以及5g核心网之间的用户数据是无法进行动态迁移的,原有4g系统的众多的用户信息参数,无法在5g系统中同步获得。目前还需要在5g的核心网(nextgenerationcore,ngc)以及4g的演进的核心网(evolvedpacketcore,epc)在端到端业务配置完成,终端才能在5g网络以及4g网络中正常附着并进行业务。

综上所述,按照目前的技术,用户的鉴权和安全数据分别在5g的udm与4g的hss设备中保存的,鉴权安全相关的数据无法同步,以及在5g和4g网络中进行交换,满足用户在不同网络中切换的需要。



技术实现要素:

本申请实施例提供了一种数据同步方法及装置,用以实现用户在4g和5g网络切换过程中的鉴权安全相关数据的同步。

本申请实施例提供的一种数据同步方法,包括:

在4g网络下的归属签约用户服务器hss与5g网络下的统一数据管理udm之间,通过预设接口传输交互信息;

通过所述交互信息实现hss与udm中的用户设备ue的鉴权数据的同步。

通过该方法,在4g网络下的归属签约用户服务器hss与5g网络下的统一数据管理udm之间,通过预设接口传输交互信息;通过所述交互信息实现hss与udm中的用户设备ue的鉴权数据的同步,从而实现用户在4g和5g网络切换过程中的鉴权安全相关数据的同步。

可选地,所述预设接口为超文本传输协议2.0。

可选地,所述通过预设接口传输交互信息,具体包括:

所述hss在增加用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存;

或者,

所述udm在增加用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存。

可选地,所述通过预设接口传输交互信息,具体还包括:

所述hss在删除用户数据之后向所述udm发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述udm收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除udm中所述ue标识对应的鉴权数据;如果不相同,则放弃删除udm中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除udm中所述ue标识对应的鉴权数据出现错误;

或者,

所述udm在删除用户数据之后向所述hss发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述hss收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除hss中所述ue标识对应的鉴权数据;如果不相同,则放弃删除hss中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除hss中所述ue标识对应的鉴权数据出现错误。

可选地,所述通过预设接口传输交互信息,具体还包括:

所述hss在修改用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在udm中重新写入所述put请求中携带的所述ue的鉴权数据;

或者,

所述udm在修改用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在hss中重新写入所述put请求中携带的所述ue的鉴权数据。

可选地,如果由于鉴权数据的编码错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第一消息;

如果由于hss或者udm的内部错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第二消息。

相应地,在装置侧,本申请实施例提供的一种数据同步装置,该装置包括:

第一单元,用于在4g网络下的归属签约用户服务器hss与5g网络下的统一数据管理udm之间,通过预设接口传输交互信息;

第二单元,用于通过所述交互信息实现hss与udm中的用户设备ue的鉴权数据的同步。

可选地,所述预设接口为超文本传输协议2.0。

可选地,所述第一单元具体用于:

所述hss在增加用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存;

或者,

所述udm在增加用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存。

可选地,所述第一单元具体还用于:

所述hss在删除用户数据之后向所述udm发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述udm收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除udm中所述ue标识对应的鉴权数据;如果不相同,则放弃删除udm中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除udm中所述ue标识对应的鉴权数据出现错误;

或者,

所述udm在删除用户数据之后向所述hss发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述hss收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除hss中所述ue标识对应的鉴权数据;如果不相同,则放弃删除hss中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除hss中所述ue标识对应的鉴权数据出现错误。

可选地,所述第一单元具体还用于:

所述hss在修改用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在udm中重新写入所述put请求中携带的所述ue的鉴权数据;

或者,

所述udm在修改用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在hss中重新写入所述put请求中携带的所述ue的鉴权数据。

可选地,所述第一单元具体还用于:

如果由于鉴权数据的编码错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第一消息;

如果由于hss或者udm的内部错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第二消息。

本申请实施例还提供的一种计算设备,包括:

存储器,用于存储程序指令;

处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行上述本申请实施例提供的任一种所述的方法。

本申请另一实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述任一种方法。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种数据同步方法示意图;

图2为本申请实施例提供的hss与udm之间增加的接口示意图;

图3为本申请实施例提供的数据插入流程示意图;

图4为本申请实施例提供的数据删除流程示意图;

图5为本申请实施例提供的数据修改流程示意图;

图6为本申请实施例提供的一种数据同步装置示意图;

图7为本申请实施例还提供的一种数据同步装置示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面结合说明书附图对本申请各个实施例进行详细描述。需要说明的是,本申请实施例的展示顺序仅代表实施例的先后顺序,并不代表实施例所提供的技术方案的优劣。

本申请实施例根据4g中的epc系统和5g中的ngc系统寻找相同点,通过在4g的hss与5g的udm之间建立接口,对接口的传输方式进行规定(原有通信设备,符合3gpp等协议,hss与udm之间是没有接口的),并且对数据的增加、删除和修改的流程都做了详细的定义。通过该方法,用户可以在4g和5g网络中进行切换而不影响到用户的业务使用,在5g网络建设过程中用途非常广泛。

参见图1,本申请实施例提供的一种数据同步方法,包括:

s101、在4g网络下的归属签约用户服务器hss与5g网络下的统一数据管理udm之间,通过预设接口传输交互信息;

s102、通过所述交互信息实现hss与udm中的用户设备ue的鉴权数据的同步。

本申请实施例所述的鉴权数据(或者用户的安全上下文uesecuritycontext数据),鉴权数据(或者用户的安全上下文数据)包括多个鉴权参数的组合,鉴权参数例如为国际移动用户识别码(internationalmobilesubscriberidentificationnumber,imsi)、密钥key(k)、算子变量算法配置域(operatorvariantalgorithmconfigurationfield,op)、验证管理字段(authenticationmanagementfield,amf)。

hss是4g系统中的一个用于用户鉴权的网元设备,udm是5g核心网中用于鉴权的设备;hss与udm都存储有用户的鉴权相关的数据;用户会在4g网络以及5g网络中切换,使用的同一份数据。用户在4g覆盖下,通过与hss交互,在4g网络中注册;当移动到5g网络中,ue需要与5g网络的udm交互。将hss中的鉴权数据与udm中的鉴权数据进行同步,当用户从4g网络移动到5g网络时,由于5g网络中已经同步过鉴权数据,所以ue在5g网络中能够注册成功。

可选地,所述预设接口为超文本传输协议2.0。

可选地,所述通过预设接口传输交互信息,具体包括:

所述hss在增加用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存;

或者,

所述udm在增加用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存。

本申请实施例所述的用户数据包括与用户相关的数据,例如包括鉴权数据、其他数据等等。

可选地,所述通过预设接口传输交互信息,具体还包括:

所述hss在删除用户数据之后向所述udm发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述udm收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除udm中所述ue标识对应的鉴权数据;如果不相同,则放弃删除udm中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除udm中所述ue标识对应的鉴权数据出现错误;

例如,ue的标识为imsi,根据所述ue的标识查找udm中保存的鉴权数据,具体包括:以imsi为主键在udm中查找一组数据,该组数据包括k、op、amf。

在hss中把该ue用户销户(删除该用户数据)之后(由于在udm中已同步了一份该用户数据),需要将udm中的该用户数据删除,为防止误删其他用户的数据,需要将hss发送给udm的鉴权参数,与udm中保存的该用户的鉴权参数进行比对,如果是一致的,则将udm中的该用户的鉴权参数进行删除,如果不一致,则说明数据存在改动或者存在问题,不可以随意删除,需要检查,并回复404告知。

或者,

所述udm在删除用户数据之后向所述hss发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述hss收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除hss中所述ue标识对应的鉴权数据;如果不相同,则放弃删除hss中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除hss中所述ue标识对应的鉴权数据出现错误。

例如,错误提示消息包括“404”。

可选地,所述通过预设接口传输交互信息,具体还包括:

所述hss在修改用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在udm中重新写入所述put请求中携带的所述ue的鉴权数据;

或者,

所述udm在修改用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在hss中重新写入所述put请求中携带的所述ue的鉴权数据。

可选地,如果由于鉴权数据的编码错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第一消息;

如果由于hss或者udm的内部错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第二消息。

例如,第一消息包括“400badrequest”状态代码,第二消息包括“500internalservererror”状态代码。

如图2所示,为本申请实施例提供的hss与udm之间增加的接口示意图,图2中采用超文本传输协议2.0(http2.0)作为hss与udm之间的接口,即hss与udm之间的应用层接口传输协议使用http2.0;http2.0承载于传输控制协议(transmissioncontrolprotocol,tcp)之上(http2.0协议基于tcp进行传输)。

如图3所示,为本申请实施例提供的数据插入流程示意图,以hss中新增加用户数据,向udm主动触发数据插入流程为例,主要步骤包括:

hss向udm发送put请求,图3中变量{ueinstanceid}表示与ue相关的标识符,该处标识为用户的imsi;其中,put请求中携带ue的鉴权相关参数(或者用户的安全上下文),包括4个变量,依次为imsi、对应imsi的用户密钥k、op、amf;

例如,hss向udm发送的put请求的内容包括:put

/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=234445};

udm收到put请求后,从put请求中取出用户安全上下文(用户的安全上下文是多个鉴权参数的组合)的数据,并以imsi为索引对用户安全上下文中的数据进行保存,如果保存成功,则udm返回“201created”,并在响应中携带用户安全上下文相关的鉴权数据;

如果由于用户安全上下文json对象的编码错误(安全上下文的数据是采用json的格式传输的,如果书写错误,不能按照json解析,udm无法识别出传递的参数)而导致用户安全上下文的数据插入在udm失败,则udm返回“400badrequest”状态代码;

如果由于udm内部错误(例如udm内存不够,数据配置不恰当等)导致用户安全上下文的数据插入在udm失败,则udm返回“500internalservererror”状态代码。

类似地,如果udm中新增加用户数据,则udm向hss主动触发数据插入流程,主要步骤包括:

udm向hss发送put请求,put请求中变量{ueinstanceid}表示与ue相关的标识符,该处标识为用户的imsi;并且,put请求中携带ue的鉴权相关参数(或者用户的安全上下文),包括4个变量,依次为imsi、对应imsi的用户密钥k、op、amf;

例如,udm向hss发送的put请求的内容包括:put

/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=234445};

hss收到put请求后,从put请求中取出用户安全上下文(用户的安全上下文是多个鉴权参数的组合)的数据,并以imsi为索引对用户安全上下文中的数据进行保存,如果保存成功,则hss返回“201created”,并在响应中携带用户安全上下文相关的鉴权数据;

如果由于用户安全上下文json对象的编码错误(安全上下文的数据是采用json的格式传输的,如果书写错误,不能按照json解析,hss无法识别出传递的参数)而导致用户安全上下文的数据插入在hss失败,则hss返回“400badrequest”状态代码;

如果由于hss内部错误(例如hss内存不够,数据配置不恰当等)导致用户安全上下文的数据插入在hss失败,则hss返回“500internalservererror”状态代码。

如图4所示,为本申请实施例提供的数据删除流程示意图,以hss中删除用户数据,向udm主动触发数据删除流程为例,主要步骤包括:

hss向udm发送delete请求,变量{ueinstanceid}表示与ue相关的标识符,该处标识为用户的imsi;并且,delete请求中携带ue的鉴权相关参数(或者用户的安全上下文),包括4个变量,依次为imsi、对应imsi的用户密钥k、op、amf;

例如,hss向udm发送的delete请求的内容包括:delete

/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=234445};

udm收到delete请求后,从delete请求中取出用户安全上下文的数据,并以imsi为索引查找udm中的用户安全上下文的数据(例如,以imsi作为主键查找一组数据,包括:k、op、amf),如果可以查找到,比较查找到的数据与delete请求携带的用户安全上下文的数据是否一致,如果一致,则删除udm中imsi对应的用户安全上下文的数据,并返回“200ok”,表示删除成功,并在响应中携带用户安全上下文相关的鉴权数据,如果不一致,则返回“404”;

如果由于用户安全上下文json对象的编码错误(安全上下文的数据是采用json的格式传输的,如果书写错误,不能按照json解析,udm无法识别出传递的参数)而导致在udm中删除用户安全上下文的数据失败,则udm返回“400badrequest”状态代码;

如果由于udm内部错误(例如udm内存不够,数据配置不恰当等)导致在udm中删除用户安全上下文的数据失败,则udm返回“500internalservererror”状态代码。

类似地,如果udm中删除用户数据,则udm向hss主动触发数据删除流程,主要步骤包括:

udm向hss发送delete请求,delete请求中变量{ueinstanceid}表示与ue相关的标识符,该处标识为用户的imsi;并且,delete请求中携带ue的鉴权相关参数(或者用户的安全上下文),包括4个变量,依次为imsi、对应imsi的用户密钥k、op、amf;

例如,udm向hss发送的delete请求的内容包括:delete

/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=234445};

hss收到delete请求后,从delete请求中取出用户安全上下文的数据,并以imsi为索引查找hss中的用户安全上下文的数据(例如,以imsi作为主键查找一组数据,包括:k、op、amf),如果可以查找到,比较查找到的数据与delete请求携带的用户安全上下文的数据是否一致,如果一致,则删除hss中imsi对应的用户安全上下文的数据,并返回“200ok”,表示删除成功,并在响应中携带用户安全上下文相关的鉴权数据,如果不一致,则返回“404”;

如果由于用户安全上下文json对象的编码错误(安全上下文的数据是采用json的格式传输的,如果书写错误,不能按照json解析,hss无法识别出传递的参数)而导致在hss中删除用户安全上下文的数据失败,则hss返回“400badrequest”状态代码;

如果由于hss内部错误(例如hss内存不够,数据配置不恰当等)导致在hss中删除用户安全上下文的数据失败,则hss返回“500internalservererror”状态代码。

如图5所示,为本申请实施例提供的数据修改流程示意图,以hss中修改用户数据或者操作配置平台需要对用户数据进行人为修改情况下,向udm主动触发数据修改流程为例,主要步骤包括:

hss向udm发送put请求,变量{ueinstanceid}表示与ue相关的标识符,该处标识为用户的imsi;并且,put请求中携带ue的鉴权相关参数(或者用户的安全上下文),包括4个变量,依次为imsi、对应imsi的用户密钥k、op、amf;

例如,hss向udm发送的put请求的内容包括:put/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=234445};

udm收到put请求后,从put请求中取出用户安全上下文的数据,并以imsi为索引查找udm中的用户安全上下文的数据,如果可以查找到,将udm中imsi对应的鉴权数据修改为put请求中携带的鉴权数据(imsi之外的其他鉴权数据);在udm中可以查找到,表示hss和udm中的用户数据已经同步过,例如,上一次hss向udm发送的put请求的内容包括:put/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=1111111};

其中,参数amf发生了改变;在udm中查找到“imsi=40076012345”对应的鉴权数据后,将“amf=1111111”修改为“amf=234445”。

如果无法查找到,则在udm中重新写入put请求中携带的用户安全上下文的数据,修改成功或者重新写入成功后,返回“200ok”,并在响应中携带用户安全上下文相关的鉴权数据;

如果由于用户安全上下文json对象的编码错误(安全上下文的数据是采用json的格式传输的,如果书写错误,不能按照json解析,udm无法识别出传递的参数)而导致用户安全上下文的数据在udm中修改或者重新写入失败,则udm返回“400badrequest”状态代码;

如果由于udm内部错误(例如udm内存不够,数据配置不恰当等)导致用户安全上下文的数据在udm中修改或者重新写入失败,则udm返回“500internalservererror”状态代码。

类似地,如果udm中修改用户数据或者操作配置平台需要对用户数据进行人为修改情况下,udm向hss主动触发数据修改流程,主要步骤包括:

udm向hss发送put请求,put请求中的变量{ueinstanceid}表示与ue相关的标识符,该处标识为用户的imsi;并且,put请求中携带ue的鉴权相关参数(或者用户的安全上下文),包括4个变量,依次为imsi、对应imsi的用户密钥k、op、amf;

例如,udm向hss发送的put请求的内容包括:put/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=234445};

hss收到put请求后,从put请求中取出用户安全上下文的数据,并以imsi为索引查找hss中的用户安全上下文的数据,如果可以查找到,将hss中imsi对应的鉴权数据修改为put请求中携带的鉴权数据(imsi之外的其他鉴权数据);在hss中可以查找到,表示udm和hss中的用户数据已经同步过,例如,上一次udm向hss发送的put请求的内容包括:put/instances/ueinstanceid=400820123/uesecuritycontext={imsi=40076012345&k=fseqre234234&op=fseqre234234&amf=1111111};

其中,参数amf发生了改变;在hss中查找到“imsi=40076012345”对应的鉴权数据后,将“amf=1111111”修改为“amf=234445”。

如果无法查找到,则在hss中重新写入put请求中携带的用户安全上下文的数据,修改成功或者重新写入成功后,返回“200ok”,并在响应中携带用户安全上下文相关的鉴权数据;

如果由于用户安全上下文json对象的编码错误(安全上下文的数据是采用json的格式传输的,如果书写错误,不能按照json解析,hss无法识别出传递的参数)而导致用户安全上下文的数据在hss中修改或者重新写入失败,则hss返回“400badrequest”状态代码;

如果由于hss内部错误(例如hss内存不够,数据配置不恰当等)导致用户安全上下文的数据在hss中修改或者重新写入失败,则hss返回“500internalservererror”状态代码。

相应地,在装置侧,参见图6,本申请实施例提供的一种数据同步装置,包括:

第一单元11,用于在4g网络下的归属签约用户服务器hss与5g网络下的统一数据管理udm之间,通过预设接口传输交互信息;

第二单元12,用于通过所述交互信息实现hss与udm中的用户设备ue的鉴权数据的同步。

可选地,所述预设接口为超文本传输协议2.0。

可选地,所述第一单元11具体用于:

所述hss在增加用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存;

或者,

所述udm在增加用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存。

可选地,所述第一单元11具体还用于:

所述hss在删除用户数据之后向所述udm发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述udm收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除udm中所述ue标识对应的鉴权数据;如果不相同,则放弃删除udm中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除udm中所述ue标识对应的鉴权数据出现错误;

或者,

所述udm在删除用户数据之后向所述hss发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述hss收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除hss中所述ue标识对应的鉴权数据;如果不相同,则放弃删除hss中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除hss中所述ue标识对应的鉴权数据出现错误。

可选地,所述第一单元11具体还用于:

所述hss在修改用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在udm中重新写入所述put请求中携带的所述ue的鉴权数据;

或者,

所述udm在修改用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在hss中重新写入所述put请求中携带的所述ue的鉴权数据。

可选地,所述第一单元11具体还用于:

如果由于鉴权数据的编码错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第一消息;

如果由于hss或者udm的内部错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第二消息。

参见图7,本申请实施例还提供的一种数据同步装置,包括:

处理器600,用于读取存储器610中的程序,执行下列过程:

在4g网络下的归属签约用户服务器hss与5g网络下的统一数据管理udm之间,通过预设接口传输交互信息;

通过所述交互信息实现hss与udm中的用户设备ue的鉴权数据的同步。

通过该装置,在4g网络下的归属签约用户服务器hss与5g网络下的统一数据管理udm之间,通过预设接口传输交互信息;通过所述交互信息实现hss与udm中的用户设备ue的鉴权数据的同步,从而实现用户在4g和5g网络切换过程中的鉴权安全相关数据的同步。

可选地,所述预设接口为超文本传输协议2.0。

可选地,所述通过预设接口传输交互信息,具体包括:

所述hss在增加用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存;

或者,

所述udm在增加用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据进行保存。

可选地,所述通过预设接口传输交互信息,具体还包括:

所述hss在删除用户数据之后向所述udm发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述udm收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除udm中所述ue标识对应的鉴权数据;如果不相同,则放弃删除udm中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除udm中所述ue标识对应的鉴权数据出现错误;

或者,

所述udm在删除用户数据之后向所述hss发送删除delete请求,所述delete请求中携带ue的鉴权数据;

所述hss收到所述delete请求后,从所述delete请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,并比较查找到的鉴权数据与所述delete请求中携带的鉴权数据是否相同;

如果相同,则删除hss中所述ue标识对应的鉴权数据;如果不相同,则放弃删除hss中所述ue标识对应的鉴权数据,并返回错误提示消息,用于提示删除hss中所述ue标识对应的鉴权数据出现错误。

可选地,所述通过预设接口传输交互信息,具体还包括:

所述hss在修改用户数据之后向所述udm发送插入put请求,所述put请求中携带ue的鉴权数据;

所述udm收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找udm中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在udm中重新写入所述put请求中携带的所述ue的鉴权数据;

或者,

所述udm在修改用户数据之后向所述hss发送插入put请求,所述put请求中携带ue的鉴权数据;

所述hss收到所述put请求后,从所述put请求中取出所述ue的鉴权数据,并根据所述ue的标识查找hss中保存的鉴权数据,如果查找到所述ue标识对应的鉴权数据,则将查找到的鉴权数据修改为所述put请求中携带的所述ue的鉴权数据;

如果查找不到所述ue标识对应的鉴权数据,则在hss中重新写入所述put请求中携带的所述ue的鉴权数据。

可选地,如果由于鉴权数据的编码错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第一消息;

如果由于hss或者udm的内部错误导致信息交互失败,则在hss与udm之间传输用于指示信息交互失败的第二消息。

其中,在图7中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器600代表的一个或多个处理器和存储器610代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。

本申请实施例提供了一种显示终端,该显示终端具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(personaldigitalassistant,pda)等。该显示终端可以包括中央处理器(centerprocessingunit,cpu)、存储器、输入/输出设备等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(liquidcrystaldisplay,lcd)、阴极射线管(cathoderaytube,crt)等。

针对不同的显示终端,可选地,用户接口620可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。

处理器600负责管理总线架构和通常的处理,存储器610可以存储处理器600在执行操作时所使用的数据。

可选地,处理器600可以是cpu(中央处埋器)、asic(applicationspecificintegratedcircuit,专用集成电路)、fpga(field-programmablegatearray,现场可编程门阵列)或cpld(complexprogrammablelogicdevice,复杂可编程逻辑器件)。

存储器610可以包括只读存储器(rom)和随机存取存储器(ram),并向处理器提供存储器中存储的程序指令和数据。在本申请实施例中,存储器可以用于存储本申请实施例提供的任一所述方法的程序。

处理器通过调用存储器存储的程序指令,处理器用于按照获得的程序指令执行本申请实施例提供的任一所述方法。

本申请实施例提供了一种计算机存储介质,用于储存为上述本申请实施例提供的装置所用的计算机程序指令,其包含用于执行上述本申请实施例提供的任一方法的程序。

所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd))等。

综上所述,本申请实施例提供了一种数据同步方法及装置,使得用户在4g和5g网络切换过程中,通过服务化接口实现鉴权安全相关数据的有效同步。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

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