一种注册方法、代理装置与注册系统
技术领域
本发明涉及IP多媒体子系统(IMS),尤其涉及将传统非IMS终端接入到IMS域时的注册方法与系统。
背景技术
IP多媒体子系统负责在分组域连接的基础上为基于IP的多媒体业务(如VoIP、会议电视业务等)提供相关控制机制。该系统主要功能实体包括:呼叫状态控制功能(Call Session Control Function,CSCF)、归属用户服务器(HomeSubscriber Server,HSS)、媒体网关控制功能(Media Gateway ControlFunction,MGCF)、媒体资源功能(Multimedia Resource Function,MRF)等。
CSCF包括三种不同的呼叫状态控制功能:分别为:查询CSCF(I-CSCF)、代理CSCF(P-CSCF)和服务CSCF(S-CSCF)。
P-CSCF是用户终端(UE)联系IMS的第一步。它将在UE收到IMS发起的SIP消息前,转给一个位于归属网络的SIP服务器,反之亦然。根据网络运营商设定的规则,P-CSCF也可以修改一个发出的请求。
I-CSCF的功能是提供到归属网络的入口,将归属网络的拓扑图对其它网络隐藏起来,并可以灵活选择S-CSCF。
S-CSCF完成UE的会话控制功能,其中包括将始发的会话路由到外部网络,将终结的会话路由到访问的网络。一个呼入的SIP会话请求处理业务时,S-CSCF决定是否需要一个应用服务器接受相关信息。这个决定基于从HSS或其它网络实体(如应用服务器)收到的信息。所有的CSCF功能可以生成和输出呼叫的详细记录用于计费处理。
HSS是由归属位置寄存器(Home Location Register,HLR)和鉴权中心(Authentication Center,AUC)演进而来的,是一个给定用户的主数据库。它是一个包含登记信息的实体,用于支持网络实体处理呼叫/会话。它也支持用户认证和授权功能(Authentication,Authorization and Accounting,AAA),通过认证、授权、名称/地址解析等服务,HSS帮助呼叫控制服务器完成选路/漫游功能。HSS负责保存下列与用户相关的信息:(1)用户标识、编号及地址信息;(2)用户安全信息,用于认证和授权所需的网络接入控制信息;(3)在系统间级别上的用户位置信息,即HSS处理用户注册,同时存储系统间的位置信息等;(4)用户的概要信息等。基于以上信息,HSS还可以对不同控制系统(电路域控制、分组域控制、IP多媒体控制等)的实体提供支持。
在IMS网络中,UE和P-CSCF之间的接口被看作是不被信任的接口,需要通过IPSec(IP Security Protocol,IP网络安全协议)、信令加密和信令完整性保护等机制进行安全保护。
如图1所示,IMS使用Digest-AKAv1-MD5(以下简称AKA)鉴权算法,用户在IMS域首次注册并鉴权的流程如下:
1.UE向IMS域发起注册请求;
2.P-CSCF向用户归属域入口的I-CSCF转发注册请求;
3.I-CSCF要求HSS给用户分配一个S-CSCF,并获取此S-CSCF的地址;
4.I-CSCF把注册消息转发给S-CSCF;
5.S-CSCF向HSS报告用户注册事件;
6.因为用户是首次注册,没有经过鉴权,故S-CSCF向HSS请求鉴权数据;
7.HSS生成鉴权向量之后返回给S-CSCF;
8.S-CSCF给I-CSCF返回4XX鉴权查询响应,对UE发起鉴权流程,响应消息中含有鉴权流程所需鉴权参数;
9.I-CSCF将转发鉴权查询响应到P-CSCF;
10.P-CSCF将鉴权查询响应转发至UE;
11.UE根据收到的鉴权参数进行鉴权运算,得到鉴权结果,通过重新发起的注册请求将鉴权结果发送到P-CSCF;
12.P-CSCF将本次注册请求转发给I-CSCF;
13.I-CSCF到HSS查询并获取已经分配给该用户的S-CSCF地址;
14.I-CSCF把注册消息转发给服务CSCF;
15.S-CSCF对UE生成的鉴权结果进行检测比较,如果和HSS生成的鉴权结果一致,则鉴权通过,向HSS报告注册结果;
16.S-CSCF还向HSS申请下载用户的业务签约数据;
17.S-CSCF给I-CSCF返回2XX响应表示注册鉴权通过;
18.I-CSCF转发所述2XX响应到P-CSCF;
19.P-CSCF给UE发送所述2XX响应。
在以上注册鉴权流程中,HSS生成一个随机数RAND并且通过执行AKA鉴权运算得到加密密钥CK(Cipher Key)和完整性密钥IK(Integrity Key)。
HSS在生成CK/IK以及其他鉴权相关参数之后,通过图1中的步骤7、8、9将CK/IK/RAND带到P-CSCF中。P-CSCF保留下CK/IK,而将RAND通过步骤10带给UE。同时在消息中还和UE交换了IPSec所需的端口号和版本号等信息。
UE收到RAND随机数之后,通过执行同样的AKA算法生成自己的CK和IK,然后与P-CSCF之间建立SA(Security Association,安全连接)。建立SA的过程中会协商好采用什么安全机制,例如IPSec或TLS(Transport LayerSecurity,传输层安全)。若采用IPSec安全机机制,需要协商是采用AH(Authentication Header,报文认证头,即认证、完整性保护)还是ESP(Encapsulating Security Payload,封装安全载荷,即认证、完整性保护和加密),以及完整性保护算法和加密算法。网络系统通过获取的IPSec参数建立起UE到P-CSCF之间的IPSec通道。从UE再次发起注册消息开始(步骤11),所有发生在UE和P-CSCF之间的SIP消息就已经被IPSec通道保护起来,同时还受到由CK和IK生成的信令加密和完整性保护机制保护。
上述现有技术的缺点如下:
IMS的安全机制是建立在AKA算法的基础之上的,需要终端和网络同时支持这一算法才能完成安全机制的建立过程。现有技术中,一些传统的非IMS不具备AKA算法能力且不支持SIP协议,因此,如何使这些传统的非IMS终端接入到IMS域,并且进一步地同样受到安全保护机制的监控,是一个业界有待解决的问题。
发明内容
本发明提供一种注册方法、代理装置与注册系统,使传统的非IMS终端能够接入到IMS域中,并且进一步地能建立起完善的安全保护机制。
本发明方法应用于非IP多媒体子系统IMS终端接入到IMS域中,该方法包括:
A、代理装置携带自身的私有用户标识、公有用户标识和IP地址信息注册到IMS域中;
B、当非IMS终端请求接入IMS域时,由所述代理装置携带自身的私有用户标识和IP地址信息以及代表该非IMS终端的公有用户标识代替该非IMS终端进行IMS域注册。
所述非IMS终端的公有用户标识由所述代理装置根据所述非IMS终端的用户标识映射获得。
所述非IMS终端的用户标识为该非IMS终端的国际移动用户标识码。
根据本发明的上述方法,所述步骤A包括:
A1、代理装置向IMS域发起SIP注册消息,携带自身的私有用户标识、公有用户标识和IP地址信息;
A2、IMS域向所述代理装置返回鉴权请求消息,对代理装置发起鉴权流程,所述鉴权清求消息中含有鉴权流程所需鉴权参数;
A3、代理装置根据收到的鉴权参数进行鉴权运算,得到鉴权结果,通过重新发起的注册消息将鉴权结果带给IMS域;
A4、所述IMS域对鉴权结果进行比较认证,并向代理装置返回鉴权成功或失败消息;若鉴权成功,则将代理装置注册到IMS域中。
所述步骤B包括:
B1、所述代理装置携带自身的私有用户标识和IP地址信息以及非IMS终端的公有用户标识代替非IMS终端向IMS域发起SIP注册消息;
B2、IMS域检测到具有相同私有用户标识的用户已经通过了鉴权,则不对该注册消息进行鉴权,直接进行注册。
本发明提供一种代理装置,包括:用户标识获取模块和IMS域注册模块;
所述用户标识获取模块接受到非IMS终端发起的注册请求后发送给所述IMS域注册模块,并获取该非IMS终端的用户标识,映射为代表该非IMS终端的公有用户标识;
所述IMS域注册模块携带代理装置的私有用户标识和IP地址信息以及代表该非IMS终端的公有用户标识代替该非IMS终端进行IMS域注册。
根据本发明的上述装置,还包括具有AKA鉴权算法能力的鉴权模块。
本发明还提供一种注册系统,实现非IMS终端注册到IMS域中,包括IMS域和代理装置,所述代理装置包括:用户标识获取模块和IMS域注册模块;
所述用户标识获取模块接受到非IMS终端发起的注册请求后发送给所述IMS域注册模块,并获取该非IMS终端的用户标识,映射为代表该非IMS终端的公有用户标识;
所述IMS域注册模块携带代理装置的私有用户标识和IP地址信息以及代表该非IMS终端的公有用户标识代替该非IMS终端进行IMS域注册。
根据本发明的上述系统,所述代理装置注册到所述IMS域后,与所述IMS域建立有安全保护通道。
所述安全保护通道建立在所述代理装置与IMS域中的代理-呼叫会话控制功能实体P-CSCF之间。
所述代理装置的私有用户标识和IP地址信息保存在IMS域中的归属用户服务器HSS中。
本发明有益效果如下:
本发明将代理装置作为IMS域的一个用户首先接入到IMS域中,当非IMS终端请求接入到IMS域时,由该代理装置代替向IMS域发起注册,实现将非IMS终端注册到IMS域中。
更进一步地,本发明使用一个具有AKA鉴权算法能力的代理装置,并在该代理装置注册到IMS域的过程中,建立起安全保护通道;并在注册消息中携带该代理装置的私有用户标识、公有用户标识和IP地址信息;当传统的非IMS终端请求接入IMS域时,由该代理装置使用已经建立的安全连接代替该非IMS终端注册到IMS域中,并在注册消息中携带该代理装置的私有用户标识、非IMS终端的公有用户标识和代理装置的IP地址信息;IMS域检测到注册消息是从已经建立好的安全连接发送过来的,且具有相同私有用户标识的用户已经注册并通过了鉴权,则不对该注册消息进行鉴权,直接进行注册,并返回注册成功消息;这样,由于该非IMS终端接入到IMS域时,使用的是已建立的安全连接,可以受到安全保护机制的监控。
附图说明
图1为现有技术中IMS用户终端接入到IMS域时的注册鉴权流程;
图2为本发明代理装置功能结构示意图;
图3为本发明方法流程图;
图4为本发明实施例信令流程图;
图5为本发明系统结构示意图。
具体实施方式
参见图2,为本发明代理装置功能结构示意图,包括用户标识获取模块、IMS域注册模块和鉴权模块。本发明的代理装置作为IMS域的一个用户预先注册到IMS域中,并在注册消息中携带该代理装置的私有用户标识、公有用户标识和IP地址信息;其中的鉴权模块具有AKA鉴权算法能力,在该代理装置注册到IMS域的过程中,建立起代理装置与IMS域之间的安全保护通道。
代理装置中的用户标识获取模块与接入网连接(具体连接的网络实体可以是移动交换中心(MSC)、归属位置寄存器(HLR)或者基站控制器(BSC)等),接受非IMS终端通过接入网发起的注册请求,并获取该终端的用户标识,发送给IMS域注册模块;IMS域注册模块携带代理装置的私有用户标识和IP地址信息以及代表该非IMS终端的公有用户标识代替该非IMS终端进行IMS域注册。非IMS终端的公有用户标识由代理装置根据所述非IMS终端的用户标识映射获得。
本发明采用上述代理装置,实现非IMS终端向IMS域的注册。
参见图3,为本发明方法流程图,具体包括:
1、代理装置向IMS域发起SIP注册消息,携带自身的私有用户标识A、公有用户标识B和IP地址C;
2、IMS域和代理装置之间进行常规的注册鉴权流程;注册成功之后,在代理装置和IMS域的P-CSCF之间建立起安全保护通道;
3、传统的非IMS终端携带用户标识D向代理装置发起接入IMS域注册请求;
4、代理装置使用已建立的安全保护通道代替非IMS终端向IMS域发起SIP注册消息,携带自身的私有用户标识A、非IMS终端的公有用户标识D(由非IMS终端的用户标识D映射成对应的公有用户标识D)和自身的IP地址C;IMS域检测到本次SIP注册消息是从已经建立好的安全连接发送过来的,且具有相同私有用户标识的用户已经注册并通过了鉴权,则不对该注册消息进行鉴权,直接进行注册。
图4为本发明实施例信令流程图,图中:
MS:表示传统的非IMS移动终端;
BS:为MS所属基站;
MAUA(Mobile Access User Agent):为本发明的代理装置;
P-CSCF:IMS域中的代理CSCF;
I-CSCF:IMS域中的查询CSCF;
S-CSCF:IMS域中的服务CSCF;
HSS:IMS域中的归属用户服务器。
具体信令流程如下:
1.MAUA向IMS域的P-CSCF发起注册请求;请求消息中携带MAUA的IMS公共用户标识(IMS Public User Identity,IMPU)、私有用户标识(IMSprivate user Identity,IMPI)和IP地址信息;假设该MAUA的公共用户标识和私有用户标识相同,都为该MAUA在IMS域中的接入号码;
2.P-CSCF收到注册请求之后,将该注册消息发给归属IMS域的I-CSCF;
3.I-CSCF要求HSS给MAUA分配一个S-CSCF,并获取此S-CSCF的地址;
4.I-CSCF将注册消息转发给对应的S-CSCF;
5.因为MAUA是首次注册,没有经过鉴权,故S-CSCF向HSS请求鉴权数据,HSS生成鉴权向量之后返回给S-CSCF;
6.S-CSCF从HSS返回的鉴权向量中选择出所需鉴权参数;
7.S-CSCF向I-CSCF返回401Unauthorized(非鉴权)响应消息,消息中包括鉴权随机数;
8.I-CSCF转发所述401Unauthorized到P-CSCF;
9.P-CSCF转发所述401Unauthorized到MAUA;
10.MAUA根据收到的鉴权参数进行鉴权运算,得到鉴权结果,重新发起注册请求到P-CSCF,携带鉴权结果信息;
11.P-CSCF收到注册请求之后,将该注册消息发给归属IMS域的I-CSCF;
12.I-CSCF到HSS查询并获取已经分配给该MAUA的S-CSCF地址;
13.I-CSCF将注册消息转发给对应的S-CSCF;
14.S-CSCF对MAUA生成的鉴权结果进行检测比较,如果和HSS生成的鉴权结果一致,则鉴权通过;
15.S-CSCF鉴权通过后,向HSS报告注册结果;
16.S-CSCF给I-CSCF返回200OK响应消息表示注册鉴权通过;
17.I-CSCF转发200OK响应消息到P-CSCF;
18.P-CSCF给MAUA发送200OK响应消息,建立与MAUA之间的安全保护通道;
以上步骤完成了代理装置MAUA将自身注册到IMS域中,并通立起代理装置与IMS域之间的安全保护通道;
19.MS向BS发起位置更新请求,携带该MS的用户标识信息,如该MS的国际移动用户标识码(International Mobile Subscriber Identity,IMSI);
20.BS将MS的位置更新请求转发给MAUA;
21.MAUA向IMS域的P-CSCF发起注册请求;请求消息中携带的公有用户标识为该MS的IMSI、私有用户标识为MAUA的接入号码,联系地址为MAUA的IP地址;这条SIP注册消息将会仍然沿着已经建立好的安全保护通道发送到P-CSCF;
22.P-CSCF收到注册请求之后,检测到注册消息是从已经建立好的安全连接发送来的,就标记此注册为安全注册,然后将注册消息转发给用户归属域I-CSCF;
23.I-CSCF到HSS去查询用户有无关联的S-CSCF;HSS判断出相同的私有用户标识已经通过了注册,这次只是不同的公有用户标识发起的注册过程,因此可以将原来关联的S-CSCF地址发送给I-CSCF;
24.I-CSCF向原来关联的S-CSCF发送注册消息;
25.S-CSCF检测到本次SIP注册消息是从已经建立好的安全连接发送过来的,且具有相同私有用户标识和IP地址的MAUA已经注册并通过了鉴权,则不对该注册消息进行鉴权,直接进行注册;
26.S-CSCF向HSS报告鉴权结果,并且下载用户数据;HSS需要在返回消息中携带用户的移动号码薄号码(Mobile Directory Number,MDN)数据;
27.S-CSCF向I-CSCF发送200OK响应,响应中带有用户的MDN参数;
28.I-CSCF向P-CSCF转发所述200OK响应;
29.P-CSCF将200OK响应转发给MAUA;
30.MAUA收到200OK响应之后,给非IMS移动终端返回位置更新接受响应,同时将收到的MDN数据保存在自己保留的用户数据集中;
31.非IMS移动终端收到位置更新接受消息,注册鉴权过程全部完毕。
根据本发明的上述方法,本发明还提供一种注册系统,实现非将IMS终端注册到IMS域中,如图5所示,包括IMS域和具有AKA鉴权算法能力的代理装置;所述代理装置作为IMS域的一个用户,预先将其用户信息保存到用于存储用户信息的网络实体中;所述代理装置注册到所述IMS域中,并与IMS域建立起安全保护通道。
所述用于存储用户信息的网络实体为IMS域中的HSS。
所述代理装置的用户信息至少包括该代理装置自身的公共用户标识、私有用户标识和对应的IP地址信息。
综上所述,本发明的代理装置本身具有自己的公共用户标识和私有用户标识,且具有AKA算法能力;其作为一个“超级用户”,在IMS域的HSS中存储有自己的用户数据。代理装置在启动时,会发起到IMS域的注册流程并且通过IMS域的鉴权过程,代理装置以自身的私有用户标识在自己和IMS的P-CSCF之间可以建立起IPsec和加密、完整性安全保护通道。后续所有以这个私有用户标识从相同IP地址发出的SIP消息都会在这个安全保护通道中传递并且受到已建立安全机制的保护;所有通过该代理装置接入到IMS域的传统非IMS终端,在进行IMS注册的时候,私有用户标识采用和代理装置相同的标识,而公有用户标识可以采用由传统非IMS终端自身的用户标识映射的代表该非IMS终端的公共用户标识(映射后的公共用户标识可以与该非IMS终端的用户标识相同);IMS域检测到具有相同私有用户标识、不同公有用户标识的注册消息的时候,由于此私有用户标识已经注册并且通过了鉴权,且该注册消息是从经过保护的信令通道发送到IMS域的,因此IMS域可以不对此注册消息进行鉴权而直接进行注册,这样使传统的非IMS终端能够接入到IMS域中,且同样受到安全保护机制的监控。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。