Compare Plans

注册认证

更新时间:2021-12-16

10.13.1 用户发起的重注册

Tobias的UE在任何时候实施重注册(见10.4节),只需要向网络发出一个新的REGISTER请求(见图10-13)。例如由于注册时间即将超时,注册就需要进行刷新,这时就会发生重注册。由于重注册的处理与初始SIP注册过程完全一样,这里不再进一步介绍。

注册认证(图1)

图10-13  用户发起的重注册(不含重认证)

10.13.2  网络发起的重认证

IMS UE对于其contact信息的注册有效期长度是600000s,这意味着S-CSCF将把已注册公共用户标识和物理IP地址的绑定关系保持约7天。由于用户认证过程是与注册过程直接结合在一起,因此在这段时间内S-CSCF无法发起对用户的重认证。然而,有些情况下,S-CSCF确实需要对UE进行重新认证。

为实现这一目的,S-CSCF可以缩短用户注册的超时时间。我们假设Tobias已经注册了3h了,他的归属运营商希望实施一次随机的重认证。为Tobias分配的S-CSCF将把Tobias注册状态的超时时间缩短为600s(10min整)。但此时TobiasUE还无法知道注册时间已经缩短,因此不会实施重新注册,而重注册是为实现重认证所必须的。为了将这个情况通知UE,S-CSCF利用了UE对注册状态事件包的订阅功能。

S-CSCF为注册状态事件包生成一个NOTIFY请求,并发送给TobiasUE,指示缩短了UE的注册时间。接到这个请求后,UE立刻更新其注册超时时间信息。

然后,所有订阅了Tobias注册状态信息的订阅者(例如P-CSCF以及有订阅的AS)都将收到来自S-CSCF的NOTIFY请求,携带了更新后的状态信息。

当所指示的时间过去一半以后(即300s),UE将发出另一个REGISTER请求。从那时起,就进入10.4节中介绍的正常的注册过程,S-CSCF就可以再次对用户进行认证(见10.6节)。

10.13.3 网络发起的重认证通知

从S-CSCF发往UE的NOTIFY消息(见图10-14)中包含以下信息:

注册认证(图2)

图10-14 网络发起的重新认证

<?xmlversion="1.0"?>

<reginfbxmlns="um:ietf:params:xml:ns:reginfo"version="2"state="partial",>

<registrationaor="sip:tobias@homel.fr"id=“al"state="active">

<contactid="15"state="activeHevent="shortenedvexpires="600">

sip:[5555::l:2:3:4]

</contact>

〈contactid=“20“state="active"event="registered">

sip:[5555::171:171:172:173]

</contact>

</registration>

〈registrationaor="tel:+44-123-456-789"id="a2“state="active">

<contactid="16“state="active"event="shortened" expires="600">

sip:[5555::1:2:3:4]

</contact>

</registration>

〈registrationaor="sip:gameMaster@homel.fi"id="cl'state="active">

<contact id="45"state="active"event="registered">

sip:[5555::101:102:103:104]

</contact>

〈contactid="19"state="active"event="shortened"expires="600">

sip:[5555::l:2:3:4]

</contact>

</registration>

</reginfo>

所有注册和相关contact信息的状态仍然设置为“active“,但对contact信息所发生的最后一个事件指示为“shortened“。超时时间值显示UE在l0min之后就需要再次进行注册。

在上述文件中,只传递了部分的注册状态信息(文档头中state="partial“),因为其他的注册状态信息没有改变。

10.13.4相关标准

与10.13节有关的规范有:

•RFC3265   Session Initiation Protocol(SlP)-specificEventNotification.

•RFC3680   ASession InitiationProtocol(SIP)EventPackageforRegistration


10.14  解除注册

10.14.1概述

任何事物都总会走到终点,用户在IMS注册也是这样。Tobias呼叫姐姐之后,为了不被打扰就会关闭移动电话。关机时,他的手机会向S-CSCF发出另一个REGISTER请求,包含我们已经见到的所有信息,但指示这次本消息是为了解除注册(见图10-15)。S-CSCF则清除为Tobias所保存的所有信息,更新HSS数据,并向TobiasUE发出一个200(OK)响应。

注册认证(图3)

图10-15  用户发起的注册解除

有时网络也会需要解除用户的注册(见图10-16):可能是由于S-CSCF需要关机,或者Tobias使用的是预付费卡并已用光了余额。这些情况下,S-CSCF只需要向TobiasUE发出另一个携带注册状态信息的NOTIFY消息,但这次是指示他已经被解除注册。

注册认证(图4)

图10-16  网络发起的注册解除


在以上任何一种情况下,S-CSCF都会发出NOTIFY请求给P-CSCF以及所有订阅了Tobias注册状态信息的订阅者,指示Tobias已经被解除注册。通过发送这个NOTIFY请求,也将关闭在订阅注册状态事件期间创建的对话。

10.14.2用户发起的注册解除

当Tobias关闭手机时,UE会向网络发出一个REGISTER请求,以便解除注册。

REGISTERsip:homel.frSIP/2.0

Via:SIP/2.0/UDP[5555::1:2:3:4]:1357;comp=sigcomp;branch=99uetb

Route:sip:[5555::a:b:c:d]:7531;comp=sigcomp;Ir

Max-Forwards:70

From:<sip:tobias@home1.fr>;tag=ulkomaa

To:<sip:tobias@homel.fr>;tag=kotimaa

Authorization:Digestusemame=“user1_private@home1.fr“,

realm=“homel.fr“,

nonce=A34Cm4-Fva37UYWp6NB34JP,algorithm=AKAvl-MD5,

uri=“sip:homel.fr“,

response=“6629fae49393a05397450978507c4efl“,

integrity-protected=“yes“

uri=“sip:homel.fr“,

Require:sec-agree

Proxy-Require:sec-agree

Security-Verify:tls;q=0.2,lpsec-3gpp;q=0.1;alg=hamc-sha-1-96;spi-c=98765434;spi・s=87654322;port-c=8644;port-s=7533

Security-Client:digest,IPsec-3gpp;alg=hmac-sha-1-96;spi・c=23456790;spi・s=12345679;port-c=2472;port-s=1357

Contact:<sip:[5555::1:2:3:4]:1357;comp=sigcomp>;expires=0

Call-ID:apb03a0s09dkjdfglkj49222

Csep:49REGISTER

Content-Length:0

以上信息与我们在其他REGISTER请求中已经看到过的信息基本相同,主要区别在于超时时间设置成0,意味着用户希望解除公共用户标识(在To消息头中)和IP地址(在Contact消息头中)之间已注册的绑定关系。

这个REGISTER请求和其他每个REGISTER经历完全相同的路由(即不会按照已存储的Service-Route进行传送)。因此,它将:

• 经过P-CSCF——进行完整性保护检查,并在Authorization头中增加integrity-protected=yes的标志;

• 经过I-CSCF——向HSS询问为用户指定了哪个S-CSCF地址;

• 最终在S-CSCF处收到——将在这里实施注册解除。

S-CSCF会立刻向UE发回一个200(OK)响应,包含的expires消息头也设为0.

随后,S-CSCF会创建NOTIFY请求,发往所有订阅了Tobias注册状态信息的订阅者,包括TobiasUEo每个NOTIFY请求都包含Subsciption-State头,并设置为"terminated",表示已经终止了对于该用户的注册状态信息的订阅关系。例如:

NOTIFY sip:[5555::l:2:3:4]:1357;comp=sigcompSIP/2.0

Subscription-State:terminated

这些NOTIFY请求的消息正文中会包含Tobias的注册状态信息:

<?xml version="1.0"?>

<reginfbxmlns="urn:ietf:params:xinl:ns:reginfo"version="3"state="partial",>

这个XML文件仍然包含一个“partial“状态指示,因为它并不显式地列出尚未注册的公共用户标识(见10.12.7节)。

〈registrationaor="sip:gameMaster@homel.fr"id="al"state="active">

〈contactid=“15"state="terminated“event=“unregistered“>

sip:[5555::1:2:3:4]

</contact>

<contactid="20vstate="active“event="registered"

sip:[5555::171:171:172:173]

</contact>

</registration>

公共用户标识sip:tobias@homel.fr仍然是激活的,因为它还已被Tobias的寻呼机注册(见10.12.10节),只有移动电话的contact地址设置为已结束。

<egistrationaor="tel:+44-123-456-789"id="a2"state="terminated">

<contactid="16"state="terminated"event="unregistered">

sip:[5555::l:2:3:4]

</contact>

</registration>

Tobias的tel URL已经完全被解除注册。

<egistrationaor=<sip:gameMaster@homel.fr"id="al"state="active">

<contactid="45"state=''active“event="refi*eshed“>

sip:[5555::101:102:103:104]

</contact>

<contactid-"19"state="terminated"event="unregistered">

sip:[5555::l:2:3:4]

</contact>

</registration>

</reginfo>

最后,游戏的URIsip:gameMaster@homel.fr也保持了注册状态,因为另一个UE正在活跃地使用它。只有显式解除注册的contact地址才会被删除。

10.14.3网络发起的注册解除

任何时候只要网络发现需要解除用户的注册状态,或者需要解除用户的某些标识的注册状态,S-CSCF就会生成NOTIFY请求,其方式与10.14.2节中介绍的一样,只是XML文件的内容看起来不一样:

<?xmlversion=“1.0“?>

<reginfdxmlns=“urn:ietf:params:xml:ns:reginfo"version="3"state="partial">

<egistrationaor="sip:tobias@homel.fr"id="al"state="terminated">

<contactid=“15"state="terminated"event="deactivated">

sip:[5555::l:2:3:4]

</contact>

<contactid="20"state="terminated"event="deactivated">

sip:[5555::171:171:172:173]

</contact>

</registration>

Registrationaor="tel:+44・123-456-789"id="a2"state="terminated">

<contactid="16“state="terminated"event="deactivated">

sip:[5555::l:2:3:4]

</contact>

</registration>

<egistrationaor="sip:gameMaster@homel.fi“id=“cl"state="terminated"〉

<contactid="45“state="terminated"event="deactivated">

sip:[5555::101:102:103:104]

</contact>

<contactid="19"state="terminated"event="deactivated">

sip:[5555::l:2:3:4]

</contact>

</registration>

</reginfb>

所有的公共用户标识现在都设置为“terminated“,因为网络会随即终结所有关于Tobias巳激活的注册,包括那些由其他终端所注册的。事件变为«deactivated",表示是网络发起的注册解除,而不是用户发起。

10.14.4  相关标准

与10.14节有关的规范有:

•RFC3265    Session Initiation Protocol (SlP)-specificEvent Notification.

•RFC3680    Session Initiation Protocol (SIP)EventPackagefor Registration.

下一篇

早期IMS安全

通信知识

早期IMS安全

10.15.1回退到早期IMS安全的IMS注册示例3.19节介绍了早期IMS安全的通用原则和需求。图10-17显示了当网络需要基于IP的认证,并且UE同时支持两种IMS安全机制(即完全IMS安全和早期IMS安全)时,早期IMS安全的工作原理。其他可能的情形将在10.15.2节中给出。图10-17 早期IMS安全流程示例当UE建立IMS信令PDP上下文时,GGSN创建RADIUS“Account ...

相关内容

TickIT认证流程是怎样的?(对比优势及实际应用)

TickIT认证流程是怎样的?(对比优势及实际应用)

TickIT的含义和用途TickIT是一个帮助软件企业建立与其业务过程相关的质量......

通信知识

2024-12-09

一文解读ATEX防爆认证

一文解读ATEX防爆认证

ATEX防爆认证是一种针对潜在爆炸性环境中使用的设备的安全认证,它源自欧盟的AT......

技术支持

2024-09-08

为什么需要ATEX防爆认证?认证流程是怎样的?

为什么需要ATEX防爆认证?认证流程是怎样的?

什么是ATEX防爆认证ATEX防爆认证是指欧洲爆炸性环境防护设备的认证标准。AT......

通信知识

2023-10-24