一种IMS网络中的会话控制方法和装置转让专利

申请号 : CN200510123209.8

文献号 : CN1968262B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 武亚娟朱奋勤

申请人 : 华为技术有限公司

摘要 :

本发明提供一种IMS网络中的会话控制方法和装置,其核心均为:设置AS(应用服务器)代表用户发起会话的权限信息,在AS代表用户发起会话过程中,IMS网络功能实体获取所述权限信息,并根据该权限信息对AS代表用户发起的会话过程进行控制。本发明能够使IMS网络功能实体对AS是否具有代表用户发起会话的权限进行检测,从而能够有效控制AS代表用户发起的会话过程,避免了AS擅自代表其他用户在IMS网络中发起呼叫的现象,消除了网络中存在的安全隐患;本发明的AS代表用户发起会话的权限信息设置方式灵活、且提供了多种AS代表用户发起会话的权限检测实现过程,使本发明能够满足实际网络中的各种检测需求,从而实现了提高网络安全性,提高用户满意度的目的。

权利要求 :

1.一种IMS网络中的会话控制方法,其特征在于,包括:a、设置应用服务器AS代表用户发起会话的权限信息;

b、在AS代表用户发起会话过程中,IP多媒体子系统IMS网络功能实体获取所述权限信息,根据该权限信息确定该AS是否被允许代表用户发起会话,并对AS代表用户发起的会话过程进行控制,所述IMS网络功能实体为:归属签约用户服务器HSS或服务呼叫状态控制功能S-CSCF。

2.如权利要求1所述的一种IMS网络中的会话控制方法,其特征在于,所述步骤a具体包括:在HSS中设置AS代表用户发起会话的权限信息。

3.如权利要求2所述的一种IMS网络中的会话控制方法,其特征在于,所述步骤a具体包括:在HSS的AS允许列表中增加允许和/或禁止AS代表用户发起会话的用户标识信息。

4.如权利要求3所述的一种IMS网络中的会话控制方法,其特征在于,所述步骤b具体包括:b1、AS向HSS发送用户数据的查询请求;

b2、HSS根据查询请求中携带的信息和AS允许列表中存储的信息对AS代表用户发起的会话过程进行检查和控制。

5.如权利要求4所述的一种IMS网络中的会话控制方法,其特征在于:所述步骤b1中用户数据的查询请求包括:用户对应的S-CSCF的地址信息的查询请求;

且所述步骤b2具体包括:

HSS根据所述查询请求中携带的用户数据索引信息获取AS允许列表中的对应表项;

HSS根据查询请求中携带的AS标识信息、所述用户标识和所述表项信息判断查询是否成功;

如果确定允许查询S-CSCF地址信息、且允许AS代表用户发起会话,将S-CSCF地址信息携带于查询成功的响应消息中传输至AS;

如果确定不允许查询S-CSCF地址信息、或查询不到S-CSCF地址信息、或不允许AS代表用户发起会话,将查询失败的响应消息传输至AS。

6.如权利要求1所述的一种IMS网络中的会话控制方法,其特征在于,所述步骤a具体包括:设置HSS的用户描述信息中的预定字段为AS代表用户发起会话的权限信息。

7.如权利要求6所述的一种IMS网络中的会话控制方法,其特征在于,所述预定字段为AS信息,且所述步骤b具体包括:S-CSCF根据AS传送来的会话发起协议SIP会话建立请求消息确定需要建立的会话为AS始发会话时,判断从HSS处下载的用户描述信息中是否包含有所述AS信息;

如果包含有所述AS信息,确定该AS具有代表用户发起会话的权限,允许进行所述SIP会话建立请求消息的后续处理;

如果不包含有所述AS信息,确定该AS不具有代表用户发起会话的权限,拒绝进行所述SIP会话建立请求消息的后续处理。

8.如权利要求1所述的一种IMS网络中的会话控制方法,其特征在于,所述步骤a具体包括:在HSS的用户描述信息中设置允许AS代表用户发起会话的AS标识信息。

9.如权利要求8所述的一种IMS网络中的会话控制方法,其特征在于,所述步骤a具体包括:在处于注册状态的用户描述信息中设置允许AS代表用户发起会话的AS标识信息;或在处于未注册状态的用户描述信息中设置允许AS代表用户发起会话的AS标识信息;

在处于注册状态和未注册状态的用户描述信息中均设置允许AS代表用户发起会话的AS标识信息;或在和注册状态无关的用户描述信息中设置允许AS代表用户发起会话的AS标识信息。

10.如权利要求8所述的一种IMS网络中的会话控制方法,其特征在于,所述步骤b具体包括:S-CSCF根据AS传送来的SIP会话建立请求消息确定需要建立的会话为AS始发会话时,根据其接收的SIP会话建立请求消息中携带的信息和从HSS处下载的用户描述信息中的过滤规则信息进行匹配,并判断允许AS代表用户发起会话的AS标识信息和发送SIP会话建立请求消息的AS是否匹配成功;

如果匹配成功,确定所述代表用户发起会话的AS具有代表用户发起会话的权限,允许进行所述SIP会话建立请求消息的后续处理;

如果匹配不成功,确定所述代表用户发起会话的AS不具有代表用户发起会话的权限,拒绝进行所述SIP会话建立请求消息的后续处理。

11.如权利要求7或10所述的一种IMS网络中的会话控制方法,其特征在于,所述确定需要建立的会话为AS始发会话的步骤具体包括:根 据SIP 会 话 建 立 请 求 消 息 中 的 orig 字 段、record route 头 域 和p-asserted-identity中的内容确定需要建立的会话为AS始发会话。

12.一种IMS网络中会话控制装置,其特征在于,所述装置为:服务呼叫状态控制功能S-CSCF实体或归属签约用户服务器HSS,所述装置包括:获取权限信息模块:在应用服务器AS代表用户发起会话过程中,获取AS代表用户发起会话的权限信息,并将其传输至确定权限模块;

确定权限模块:根据其接收的权限信息和AS传送来的请求消息中携带的信息确定该AS是否被允许代表用户发起会话,并将允许或禁止的信息传输至会话控制模块;

会话控制模块:根据其接收的允许或禁止的信息对AS代表用户发起会话的过程进行相应的控制处理。

说明书 :

一种IMS网络中的会话控制方法和装置

技术领域

[0001] 本发明涉及网络通讯技术领域,具体涉及一种IMS网络中的会话控制方法和装置。

背景技术

[0002] 随着宽带网络的发展,移动通信将不仅仅局限于传统的话音通信,结合音频、视频、图片和文本等多种媒体类型的多媒体业务将逐渐开展起来,通过与presence(呈现业务)、群组管理,短消息、WEB(网页)浏览、定位信息、PUSH(推送业务)、文件共享等数据业务的结合,可以满足用户的多种需求。
[0003] 随着宽带网络的发展,移动通信将不仅仅局限于传统的话音通信,结合音频、视频、图片和文本等多种媒体类型的多媒体业务将逐渐开展起来,通过与presence、群组管理,短消息、WEB(网页)浏览、定位信息、PUSH(推送业务)、文件共享等数据业务的结合,可以满足用户的多种需求。
[0004] 在多种应用的推动下,3GPP(3rd Generation Partnership Project,第三代移动通信标准化的伙伴项目)以及3GPP2(3rd Generation Partnership Project2,第三代移动通信标准化的伙伴项目2)等标准组织都先后推出了基于IP的多媒体子系统架构,目的是在移动网络中使用一种标准化的开放的结构来实现多种多样的多媒体应用,以提供给用户更多的选择和更丰富的感受。
[0005] 在3GPP Release 5(R5)阶段,引入了IP多媒体子系统域,简称IMS(IPMultimedia Subsystem,IP多媒体子系统),IMS叠加在分组域网络之上,由CSCF(Call Session Control Function,呼叫状态控制功能)、MGCF(Media GatewayControl Function,媒体网关控制功能)、MRF(Multimedia Resource Function,媒体资源功能)和HSS(Home Subscriber Server,归属签约用户服务器)等功能实体组成,其中:CSCF又可以分成S-CSCF(Serving CSCF,服务CSCF)、P-CSCF(Proxy CSCF,代理CSCF)和I-CSCF(Interrogating CSCF,查询CSCF)三个功能实体。S-CSCF是IMS的业务交换中心,执行会话控制,维持会话状态,负责管理用户信息,产生计费信息等;P-CSCF是终端用户接入IMS的接入点,完成用户注册,负责QoS控制和安全管理等,I-CSCF负责IMS域之间的互通,管理S-CSCF的分配,对外隐藏网络拓扑和配置,产生计费数据等。MGCF控制网关,实现IMS网络和其它网络的互通,MRF提供媒体资源,如收放音,编解码和多媒体会议桥等。HSS是用户数据库,存储IMS用户的签约数据和配置信息等。
[0006] 因为IMS网络的结构做到了和底层携带网络无关,因此,3GPP定义的IMS网络也可以应用在3GPP定义的分组域网络之外的其他分组网络上,比如3GPP2中定义的分组网络、WLAN网络、以及NGN网络等,实现了和用户使用终端类型的无关性以及和接入网络类型的无关性,因此,这里不限制IMS只应用在3GPP相关的网络和应用上,其他类型的接入网络和携带网络的业务和应用也可以用IMS架构来实现。
[0007] SIP(Session Initiation Protocol,会话发起协议)是由IETF(Interne工程任务组)提出的IP电话信令协议。正如其名字表面的含义,SIP用于发起会话,它能控制一个或者多个参与者参加的多媒体会话的建立和终结过程,并能动态调整和修改会话属性,如会话带宽要求、传输的媒体类型如语音、视频、文本等、媒体编解码格式、对组播和单播的支持等。在IMS中,使用SIP协议作为IP多媒体会话的信令控制协议。
[0008] AAA,即认证(Authentication)、授权(Authorization)和计费(Accounting),AAA一直是网络运营商进行网络运营和管理的基础,随着AAA的发展,新的框架结构Diameter技术已经成型。Diameter协议族包括:基础协议(DiameterBase Protocol)和各种应用协议,其中,基础协议提供了作为一个AAA协议的最低需求,是Diameter网络节点都必须实现的功能,包括节点间能力的协商、Diameter消息的接收及转发、计费信息的实时传输等。应用协议则充分利用基础协议提供的消息传送机制,规范相关节点的功能以及其特有的消息内容,来实现应用业务的AAA。在IMS中,HSS和I-CSCF以及HSS和S-CSCF之间的Cx接口上就是使用Diameter协议来传送相关信息的。
[0009] HSS是每个用户最重要的数据库,保存着所有和签约相关的信息,用于支持各个网络实体对呼叫和会话的处理,其保存的信息包括:用户标识、编号以及寻址信息、用户安全信息、用户位置信息以及用户描述信息(user profileinformation)等。一个归属网络可以有一个或者多个HSS,HSS的数量取决于移动签约用户的数量、网络设备的容量以及具体的组网情况。HSS和网络中的多个实体之间有接口。
[0010] 每个签约了IMS业务的用户都由归属网络运营商分配了一个或者多个私有用户标识IMPI,用于在注册、授权、管理和计费过程中使用,IMPI使用NAI(Network Access Identifier,网络接入标识)格式,每个IMS用户还有一个或者多个公共用户标识IMPU,用于和其他用户通信的时候标识自己,找到对方。私有用户标识一般不对外公开,而公共用户标识是对外公开的,在使用各类业务的会话过程中使用。
[0011] 此外,随着PRESENCE(呈现业务)、MESSAGING(消息业务)、CONFERENCING(会议业务)、群组业务等业务能力被组件化和标准化,并在IMS网络中应用,一种新的PSI(Public Service Identitity,公共业务标识)被引入。
[0012] 公共业务标识和公共用户标识的不同之处在于:公共用户标识是用户在各类业务的使用中用来标识自己、找到对方的标识,而公共业务标识的是业务,这些业务一般都驻留在应用服务器AS上,比如本地业务(Local Service)等,此外,公共业务标识还可以用来标识一个群组,比如在聊天室业务中,一个公共业务标识如sip:chatlist_X@example.com可以用来表示一个聊天群组,每个用户可以和这个PSI建立会话,通过这个PSI所在的AS和聊天会话中的其他参与者进行消息的收发。
[0013] PSI的格式可以是SIP URI或者TEL URI。
[0014] 目前,IMS网络中AS可以代表一个使用公共用户标识表示的用户或者一个使用公共业务标识表示的业务发起呼叫,在AS代表用户发起会话建立的时候,请求消息中表示发起方的域中填的就是用户本身的标识。
[0015] AS在代表IMPU(IP Multimedia PUblic identity,IP多媒体公共用户标识)或者PSI发起会话的时候,首先需要获得S-CSCF的地址,如果AS代表用户使用IMPU发起会话请求,而AS无法获得一个为该IMPU服务的S-CSCF的地址,则AS不能代表用户发起这个会话请求。如果AS使用PSI发起会话请求,而这个PSI没有被分配一个S-CSCF地址,则AS使用DNS等机制完成SIP消息的路由过程,直接将会话发起请求发送给被叫网络。如果AS获得了为IMPU或者PSI服务的S-CSCF的地址,则AS发送会话发起请求到这个S-CSCF。
[0016] IMS网络中AS发起呼叫的过程如附图1所示。
[0017] 图1中,在步骤1、AS获取S-CSCF地址。如果AS获得了为IMPU或者PSI服务的S-CSCF的地址,到步骤2a。如果AS无法获得为IMPU服务的S-CSCF的地址,到步骤2b。
[0018] 在步骤2a、AS发送SIP INVITE消息给S-CSCF,SIP INVITE消息中携带有最初提供的会话媒体描述信息(initial SDP offer)。
[0019] 在步骤2b、AS发送SIP INVITE消息给被叫用户所在的网络,SIP INVITE消息中携带有最初提供的会话媒体描述信息(initial SDP offer)。
[0020] 到步骤3、S-CSCF确定其接收的SIP INVITE消息是一个来自主叫侧的请求,触发主叫业务相关的业务逻辑,在该步骤中,S-CSCF将这个请求消息视为一个通过了鉴权和授权过程的请求消息。
[0021] 到步骤4、该步骤是两个网络中的S-CSCF之间的交互过程。
[0022] 在步骤5-6、在返回的信令消息中携带有被叫侧的媒体会话描述信息。
[0023] 在步骤7-8、AS决定此次会话需要提供的媒体流能力,AS确认其收到对方的媒体描述信息后,向被叫侧返回应答的确认消息,该确认消息中也可以包含主叫侧的媒体描述信息。
[0024] 在步骤9-10、被叫侧向主叫侧返回应答的确认消息,如果被叫侧接收的应答的确认消息中携带了媒体描述信息,则被叫侧向主叫侧返回的应答的确认消息中也需要携带媒体描述信息。
[0025] 在步骤11-12、资源预留成功后,被叫侧向主叫侧返回确认消息。
[0026] 在步骤13-14、被叫用户可选的可以执行alerting振铃的处理。
[0027] 在步骤15-16、被叫用户应答了之后,返回一个最终响应200OK给主叫侧的AS。
[0028] 在步骤17-18、AS收到200OK后返回ACK确认。
[0029] 从上述对IMS网络中AS发起呼叫的描述可知,在应用了PSI之后,用户可以请求和一个PSI建立会话,如和一个聊天室业务建立对话,这个PSI所在的AS在接收到来自用户的消息后,需要向聊天室中的其他用户发送这个消息,这时,PSI所在的AS需要代表发送消息的用户发起会话建立请求或者直接通过SIP MESSAGE发送即时消息给其他用户。
[0030] 由于需要防止AS发起的业务请求以及后续的业务流量是欺诈的或者是不安全的,所以,需要对AS执行必要的安全和鉴权过程。IMS网络对AS的安全和鉴权过程是通过AS permission list(AS允许列表)来实现的。
[0031] AS允许列表对发送查询请求的AS是否是被允许进行查询的资格进行检查,该检查以AS为粒度,只有通过了这个列表检查的AS才可以进行后续消息的处理过程。
[0032] 但是,在AS代表用户发起业务请求的情况下,如果有一个位于AS允许列表中的AS通过某种方式得到了用户信息,则这个AS能够根据其得到的用户信息擅自代替其他用户在IMS网络中发起呼叫,虽然这个AS可能只能代表自己发起在IMS网络中的呼叫请求,比如广告推送服务等。网络中的其他用户或者应用服务器将会收到以AS得到的用户名义发起的呼叫请求,从而使网络安全存在隐患,使用户的合法利益受到损害。

发明内容

[0033] 本发明的目的在于,提供一种IMS网络中的会话控制方法和装置,通过对AS代表用户发起会话的权限进行检测,消除了网络中存在的安全隐患、保证了用户的合法利益不受损害。
[0034] 为达到上述目的,本发明提供的一种IMS网络中的会话控制方法,包括:
[0035] a、设置AS(应用服务器)代表用户发起会话的权限信息;
[0036] b、在AS代表用户发起会话过程中,IMS网络功能实体获取所述权限信息,并根据该权限信息对AS代表用户发起的会话过程进行控制。
[0037] 所述IMS网络功能实体为:HSS或S-CSCF。
[0038] 所述步骤a具体包括:
[0039] 在HSS中设置AS代表用户发起会话的权限信息。
[0040] 所述步骤a具体包括:
[0041] 在HSS的AS允许列表中增加允许和/或禁止AS代表用户发起会话的用户标识信息。
[0042] 所述步骤b具体包括:
[0043] b1、AS向HSS发送用户数据的查询请求;
[0044] b2、HSS根据查询请求中携带的信息、AS允许列表中存储的信息对AS代表用户发起的会话过程进行检查和控制。
[0045] 所述步骤b1中用户数据的查询请求包括:用户对应的S-CSCF的地址信息的查询请求;
[0046] 且所述步骤b2具体包括:
[0047] HSS根据所述查询请求中携带的用户数据索引信息获取AS允许列表中的对应表项;
[0048] HSS根据查询请求中携带的AS标识信息、所述用户标识、所述表项信息判断查询是否成功;
[0049] 如果确定允许查询S-CSCF地址信息、且允许AS代表用户发起会话,将S-CSCF地址信息携带于查询成功的响应消息中传输至AS;
[0050] 如果确定不允许查询S-CSCF地址信息、或查询不到S-CSCF地址信息、或不允许AS代表用户发起会话,将S-CSCF地址信息携带于查询失败的响应消息中传输至AS。
[0051] 所述步骤a具体包括:
[0052] 设置HSS的User Profile中的预定字段为AS代表用户发起会话的权限信息。
[0053] 所述预定字段为AS信息,且所述步骤b具体包括:
[0054] S-CSCF根据AS传送来的SIP会话建立请求消息确定需要建立的会话为AS始发会话时,判断从HSS处下载的User Profile中是否包含有所述AS信息;
[0055] 如果包含有所述AS信息,确定该AS具有代表用户发起会话的权限,允许进行所述SIP会话建立请求消息的后续处理;
[0056] 如果不包含有所述AS信息,确定该AS不具有代表用户发起会话的权限,拒绝进行所述SIP会话建立请求消息的后续处理。
[0057] 所述步骤a具体包括:
[0058] 在HSS的User Profile中设置允许AS代表用户发起会话的AS标识信息。
[0059] 所述步骤a具体包括:
[0060] 在处于registered(注册状态)的User Profile中设置允许AS代表用户发起会话的AS标识信息;或
[0061] 在处于unregistered(未注册状态)的User Profile中设置允许AS代表用户发起会话的AS标识信息;或
[0062] 在处于注册状态和未注册状态的User Profile中均设置允许AS代表用户发起会话的AS标识信息;或
[0063] 在和注册状态无关的User Profile中设置允许AS代表用户发起会话的AS标识信息。
[0064] 所述步骤b具体包括:
[0065] S-CSCF根据AS传送来的SIP会话建立请求消息确定需要建立的会话为AS始发会话时,根据其接收的SIP会话建立请求消息中携带的信息和从HSS处下载的User Profile中的过滤规则信息进行匹配,并判断允许AS代表用户发起会话的AS标识信息和发送SIP会话建立请求消息的AS是否匹配成功;
[0066] 如果匹配成功,确定所述代表用户发起会话的AS具有代表用户发起会话的权限,允许进行所述SIP会话建立请求消息的后续处理;
[0067] 如果匹配不成功,确定所述代表用户发起会话的AS不具有代表用户发起会话的权限,拒绝进行所述SIP会话建立请求消息的后续处理。
[0068] 所述确定需要建立的会话为AS始发会话的步骤具体包括:
[0069] 根 据SIP会 话 建 立 请 求 消 息 中 的 orig字 段、record route头 域 和p-asserted-identity中的内容确定需要建立的会话为AS始发会话。
[0070] 本发明还提供一种IMS网络中会话控制装置,包括:
[0071] 获取权限信息模块:在AS代表用户发起会话过程中,获取AS代表用户发起会话的权限信息,并将其传输至确定权限模块;
[0072] 确定权限模块:根据其接收的权限信息、AS传送来的请求消息中携带的信息确定该AS是否允许代表用户发起会话,并将允许或禁止的信息传输至会话控制模块;
[0073] 会话控制模块:根据其接收的允许或禁止的信息对AS代表用户发起会话的过程进行相应的控制处理。
[0074] 所述装置为:S-CSCF或HSS。
[0075] 通过上述技术方案的描述可知,本发明通过设置AS代表用户发起会话的权限信息,使IMS网络功能实体能够根据该权限信息对AS是否具有代表用户发起会话的权限进行检测,从而能够有效控制AS代表用户发起的会话过程,避免了AS擅自代表其他用户在IMS网络中发起呼叫的现象,消除了网络中存在的安全隐患;本发明的AS代表用户发起会话的权限信息可设置于HSS中,且设置方式灵活,如在AS允许列表或User Profile中设置允许和/或禁止AS代表用户发起会话的用户标识信息,再如利用User Profile中原有的字段内容等;本发明提供多种AS代表用户发起会话的权限检测实现过程,使本发明能够满足实际网络中的各种检测需求,如在查询允许AS读取的用户数据的过程中对AS代表用户发起会话权限进行检测,再如在AS发送SIP会话建立请求消息到S-CSCF时,对AS代表用户发起会话权限进行检测;从而通过本发明提供的技术方案实现了提高网络安全性,提高用户满意度的目的。

附图说明

[0076] 图1是现有技术中IMS网络中AS发起呼叫的流程图;
[0077] 图2是本发明的会话控制装置示意图。

具体实施方式

[0078] 如果在AS代表用户发起会话过程中,对AS能否代表用户发起会话的资格进行检查,则能够有效避免AS擅自代表其他用户在IMS网络中发起呼叫的现象,从而避免了网络中存在的安全隐患,使用户合法利益得到有效保证。
[0079] 因此,本发明的核心是:设置AS代表用户发起会话的权限信息,在AS代表用户发起会话过程中,IMS网络功能实体获取所述权限信息,并根据该权限信息对AS代表用户发起的会话过程进行控制。
[0080] 下面基于本发明的核心思想对本发明提供的技术方案做进一步的描述。
[0081] 本发明首先需要设置AS代表用户发起会话的权限信息,该权限信息可设置于HSS中,如设置于AS允许列表中或设置于User Profile中。该权限信息可以为新设置的信息,如当该权限信息设置于HSS的AS允许列表中时,扩展AS允许列表,在AS允许列表中设置新的字段内容,这个新设置的字段内容为AS代表用户发起会话的权限信息,如设置允许AS代表用户发起会话的用户标识信息、或设置禁止AS代表用户发起会话的用户标识信息、或设置允许AS代表用户发起会话的用户标识信息和禁止AS代表用户发起会话的用户标识信息等。上述设置的用户标识信息可以为:IMPU或MSISDN(Mobile SubscriberISDN Number,移动签约用户ISDN号码)信息。该权限信息也可以利用原有的信息内容,如当该权限信息设置于User Profile中时,利用原有AS信息等。
[0082] 当AS代表用户发起会话的权限信息设置于AS允许列表中时,本发明可充分利用AS向HSS查询允许其读取的用户数据的过程,来实现本发明的会话控制,其基本实现原理为:
[0083] 当AS需要代表用户发起会话建立请求时,AS向HSS发送查询请求以获取用户数据,HSS接收该查询请求,并从查询请求中获取用户数据的索引信息,根据该索引信息确定AS允许列表中的对应表项,根据该表项中的AS允许读取的用户数据和AS代表用户发起会话的权限信息判断是否允许AS代表用户发起会话,并根据判断结果向AS返回相应的响应消息。
[0084] 下面根据上述实现原理、以AS查询主叫侧用户的S-CSCF地址信息为例,对本发明的会话控制过程进行详细描述。
[0085] 设定AS允许列表中增加了允许AS代表用户发起会话的用户标识信息,如IMPU或者MSISDN信息等,AS需要代表用户IMPUa发起会话。
[0086] 由于为用户分配的S-CSCF是根据用户的注册情况动态变化的,所以,AS首先需要向HSS发送查询请求以获得当前为该用户服务的S-CSCF的地址。这里的用户为具有IMPU的用户。
[0087] AS通过sh接口向HSS发送查询请求消息,该查询请求消息中携带了用户的公共用户标识IMPUa,表示AS需要查询的用户数据是当前为该IMPUa服务的S-CSCF地址。
[0088] HSS在Sh接口上收到来自AS的查询请求之后,根据查询请求消息中携带的需要查询的用户数据的索引确定AS允许列表中的相应表项,然后,根据查询请求消息中携带的AS标识、IMPUa来判断该AS是否被允许读取用户IMPUa的S-CSCF地址信息、且该表项的允许AS代表用户发起会话的用户标识信息中是否包含有IMPUa;如果允许读取S-CSCF地址信息、且该表项中允许AS代表用户发起会话的用户标识信息中包含有IMPUa,则将用户IMPUa的S-CSCF地址信息通过查询成功的响应消息返回给AS;如果不允许读取S-CSCF地址信息或查找不到S-CSCF地址信息或该表项中允许AS代表用户发起会话的用户标识信息中不包含有IMPUa,则将查询失败的响应消息返回给AS。
[0089] 当AS从查询成功的响应消息中获得S-CSCF地址,并代表IMPUa发起会话建立请求时,S-CSCF收到的这个会话建立请求消息是经过了AS代表用户发起会话权限检测过程,并检测成功的AS发送的消息,是安全的汇聚建立请求消息。当AS接收到查询失败的响应消息时,AS无法得到IMPUa对应的S-CSCF地址,因此,无法代表IMPUa发起会话建立请求,从而避免了S-CSCF处收到这个不安全的会话建立请求消息。
[0090] 该方法可方便的适用于新实现的IMS系统,由于本发明在AS的查询请求检测过程中实现了AS代表用户发起会话的权限检测,提高了业务处理效率。
[0091] 考虑到目前已有的IMS系统已经比较稳定,为了尽量减少使本发明的方法对现有应用造成的影响,本发明还可以在查询S-CSCF过程之外增加额外的处理过程来检查AS是否有权限代表用户发起会话,这样,本发明引入的对AS代表用户发起会话的权限检查处理过程不会影响已有的对AS的查询请求检测的处理过程。
[0092] 在查询S-CSCF过程之外,增加额外的处理过程实现AS代表用户发起会话的权限检测的具体过程为:
[0093] AS通过sh接口向HSS发送查询请求消息,该查询请求消息中携带了用户的公共用户标识MSISDNb,表示AS需要查询的用户数据是当前为该MSISDNb服务的S-CSCF地址。
[0094] HSS在Sh接口上收到来自AS的查询请求消息之后,根据查询请求消息中携带的需要查询的用户数据的索引确定AS允许列表中的相应表项,然后,根据查询消息中携带的AS标识、MSISDNb来判断该AS是否被允许读取用户MSISDNb的S-CSCF地址信息。
[0095] 在上述过程结束、且在确定允许AS读取S-CSCF地址信息后,再进行AS代表用户发起会话的权限检查过程,具体过程为:HSS根据查询请求消息中携带的需要查询的用户数据的索引确定AS允许列表中的相应表项,然后,根据查询请求消息中携带的AS标识、MSISDNb和列表中允许AS代表用户发起会话的用户标识信息来判断该AS是否被允许代表用户发起会话。如果允许,则将用户MSISDNb的S-CSCF地址信息通过查询成功的响应消息返回给AS,AS根据得到的S-CSCF地址,代表MSISDNb发起会话建立请求,此时,S-CSCF收到的这个会话建立请求消息是经过了AS代表用户发起会话权限检测过程,并检测成功的AS发送的消息,是安全的汇聚建立请求消息。如果不允许,则将查询失败的响应消息返回给AS,AS无法得到MSISDNb对应的S-CSCF地址,因此,无法代表MSISDNb发起会话建立请求,从而避免了S-CSCF处收到这个不安全的请求消息。
[0096] AS代表一个PSI发起会话请求的时候,可以通过SH接口从HSS中查询得到S-CSCF的地址信息,也可以通过静态配置获知S-CSCF的地址,直接将会话建立请求消息发送给指定的S-CSCF。对于静态配置的情况,就不能够使用AS允许列表来实现AS代表用户发起会话的资格检查过程了。
[0097] S-CSCF的地址配置在AS上,意味着IMS运营商对这个AS是有一定信任关系的,但是,仍然存在可能的安全漏洞,因此,当S-CSCF的地址配置在AS上时,本发明提出另一种方法来避免这种配置下可能出现的AS代表自己无权代表的PSI或者IMPU发起会话请求建立会话的现象。
[0098] 在这种方法中,AS代表用户发起会话的权限信息可设置于User Profile中。
[0099] 当AS向S-CSCF发送SIP会话建立请求消息后,S-CSCF将其视为一个普通的SIP会话建立请求消息,根据其从HSS中下载的User Profile信息进行检查,如执行IFC匹配过程,这个匹配过程和现有的IFC匹配过程相同,都是根据收到的SIP消息中的各个信息域去匹配每一条触发规则,如果匹配成功,就会对应到一个AS,不同之处在于,当S-CSCF判断该呼叫为AS始发的呼叫时,需要在上述匹配过程中增加一个AS代表用户发起会话的权限检查。
[0100] 下面以两个具体的例子对本发明的AS代表用户发起会话的权限检查过程进行说明。
[0101] 例1、设定AS代表用户发起会话的权限信息为User Profile中已有的预定字段信息,如AS信息。
[0102] 对于AS始发的代表IMPU/PSI发起的呼叫,S-CSCF在根据其从HSS中下载的User Profile信息进行IFC匹配过程中,当发起会话建立请求消息的AS在用户的iFC列表中曾出现过,即用户的会话信息如注册信息等可以路由到发起会话建立请求消息的AS时,表示该AS可以代表该用户发起会话;当发起会话建立请求消息的AS在用户的iFC列表中没有出现过,即用户的会话信息如注册信息等不能够路由到发起会话建立请求消息的AS时,表示该AS不可以代表该用户发起会话。
[0103] 该方法比较适用于目前已经应用了的S-CSCF/HSS的IMS网络,且该方法对IMS现有的网络架构以及S-CSCF和HSS之间的消息传输没有任何影响。
[0104] 例2、设定AS代表用户发起会话的权限信息为在User Profile中新引入的字段内容,该字段的内容用于表示允许AS代表用户发起会话的授权列表,如在User Profile中增加允许/禁止AS代表用户发起会话的AS标识信息。
[0105] 对于AS代表IMPU/PSI的始发呼叫,需要检测User Profile中新增加的字段内容,检测AS是否在该授权列表中,如果AS在该授权列表中,则表示该AS可以代表用户发起会话,S-CSCF允许AS发送的这个会话建立请求;如果AS不在该授权列表中,则表示该AS不能够代表用户发起会话,S-CSCF拒绝AS发送的这个会话建立请求。
[0106] 例2比较适用于S-CSCF/HSS新应用于IMS网络的情况。
[0107] 在上述例1、例2的描述过程中,S-CSCF确定AS发起的会话为AS代表IMPU/PSI的始发呼叫的方法为:通过会话建立请求消息中的orig字段来判别该呼叫为始发呼叫,通过record route头域来识别为是哪个AS始发的呼叫,通过p-asserted-identity来识别AS代表哪个IMPU/PSI发起的始发呼叫。
[0108] 在上述使用IFC匹配机制实现会话控制过程中,考虑到在R6版本中,IFC的下载需要区分用户注册状态,因此,在配置IFC的时候,如果AS在代表用户发起会话建立请求时,需要区分用户当前的注册状态,则这个用于检查AS代表用户发起会话合法性的IFC将只配置在相应注册状态的user profile中,如只配置在REGISTERED部分,或者只配置UNREGISTERED部分、或者配置在和注册状态无关的User Profile中。如果AS在代表用户发起会话建立请求时,不需要区分用户当前的注册状态,即与用户当前的注册状态无关,且HSS的user profile中是按照注册状态区分用户数据的,则可以在不同的注册状态的user profile中都增加这个IFC的配置。
[0109] 本发明通过对现有的IMS网络中对AS的检查过程进行增强,即增加AS代表用户发起会话权限的检测,使IMS网络对AS的检查不但可以是针对AS本身的,还可以进一步针对AS代为发起呼叫的用户,从而避免了一个位于AS允许列表中的应用服务器在无权代替某个用户发起呼叫时,代替某用户发起呼叫的现象,消除了IMS网络中存在的安全隐患,保护了用户的合法利益。
[0110] 本发明提供的IMS网络中会话控制装置如附图2所示。
[0111] 图2中的装置主要包括:获取权限信息模块、确定权限模块和会话控制模块。
[0112] 获取权限信息模块主要用于在AS代表用户发起会话过程中,获取AS代表用户发起会话的权限信息,并将其传输至确定权限模块。
[0113] 当会话控制装置为HSS时,AS代表用户发起会话的权限信息可设置于获取权限信息模块中,AS代表用户发起会话的权限信息可以以AS允许列表的形式存储,具体如上述方法中的描述。获取权限信息模块可以根据AS发送来的获取允许其读取的用户数据的查询请求获取对应的AS代表用户发起会话的权限信息,并将其传输至确定权限模块。
[0114] 当会话控制装置为S-CSCF时,AS代表用户发起会话的权限信息可设置于HSS中,这样,获取权限信息模块需要从HSS中获取AS代表用户发起会话的权限信息,具体如上述方法中的描述。
[0115] 确定权限模块主要用于根据其接收的权限信息、AS传输来的请求消息中携带的信息确定该AS是否允许代表用户发起会话,并将允许或禁止的信息传输至会话控制模块。
[0116] 当会话控制装置为HSS时,AS传输来的请求消息为允许读取的用户数据的查询请求消息,确定权限模块判断的过程可以与HSS对S-CSCF的查询请求处理过程同时进行,也可以发生在S-CSCF的查询请求处理过程之后,具体如方法中的描述。
[0117] 当会话控制装置为S-CSCF时,AS传输来的请求消息为会话建立请求消息,确定权限模块在确定这个需要建立的会话为AS代表用户的始发会话时,根据其接收的权限信息、AS传输来的请求消息中携带的信息确定该AS是否允许代表用户发起会话,具体实现过程如上述方法中的描述。
[0118] 会话控制模块主要用于根据其接收的允许或禁止的信息对AS代表用户发起会话的过程进行相应的控制处理。
[0119] 当会话控制装置为HSS时,会话控制模块可以通过拒绝向AS提供S-CSCF的地址信息或者向AS提供S-CSCF的地址信息来控制AS代表用户发起会话的过程。具体如上述方法中的描述。
[0120] 当会话控制装置为S-CSCF时,会话控制模块可以通过拒绝AS发送来的会话建立请求消息或者允许AS发送来的会话建立请求消息来控制AS代表用户发起会话的过程。具体如上述方法中的描述。
[0121] 虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,本发明的申请文件的权利要求包括这些变形和变化。