1. UE初始注册的关键流程为:
(1)UE向AMF发送注册请求
(2)AMF查询NRF得到AUSF,获取归属地的AUSF可以发起鉴权请求
(3)获取到AUSF地址后,AMF请求AUSF对UE进行鉴权,AUSF通过UDM获取鉴权向量返回给AMF
(4)AMF对UE合法性进行鉴权,UE通过鉴权向量计算得到鉴权结果RES转发到AMF
(5)AMF首先站在拜访地对UE进行鉴权,鉴权通过后转发UE计算的鉴权结果到AUSF进行再次鉴权
(6)鉴权通过后,AMF对UE发起安全流程,用于NAS消息的加密和完整性保护(防止被篡改)
(7)AMF到UDM中做注册登记,完成UE和AMF的绑定,同时获取UE的签约数据
(8)AMF根据GPSI(手机号)向NRF查询,获取PCF地址
(9)得到PCF地址后,向PCF发送请求获取接入管理策略am-policy
(10)AMF向UE回复注册接受请求
1.1 UE发给AMF的注册请求(UE-ID为SUCI)
注册请求中的主要参数:
(1)Messagetype:Registrationrequest。这个是5GNAS消息类型。这里是注册请求。
(2)5GS registration type:initialregistration。表示因为开机发起的初始注册。和周期性注册、移动性注册更新、紧急注册这几种注册类型区分出来。
(3)Security header type取值为0,表示未加密的明文NAS消息。即5G-EA0算法。
(4)NAS keyset identifier:用于安全上下文的标识。本例取值为7。另外子参数TSC表示NAS安全上下文的类型。Native表示是5GAMF原生的安全上下文(而不是4-->5映射过来的)
(5)5GS mobile identity:5G用户标识。可以是5G-GUTI或者SUCI。这里是SUCI。SUCI包括了RoutingIndicator(本例为0,用于回归属地AUSF/UDM的寻址)、HomeNetworkpublickeyid(本例为3,表示UE加密SUCI用到的公钥标识)、Schemeoutput(是SUPI加密以后的密文输出)、ProtectionschemeId(取值为1表示采用ECIESprofileA加密算法,中文叫椭圆曲线加密算法)。
(6)UE security capability:UE所支持的加密和完整性保护算法。用于和AMF的算法协商,取交集。
1.2 AMF查NRF得到AUSF
AMF根据UE注册请求中提供的Routing Indicator查NRF,得到归属地AUSF。这样可以发起鉴权请求。AMF调用NRF的Discovery服务,发起AUSF的查询。用的是HTTP Get方法。但Get方法是不允许通过JSON来封装参数的。只能把参数部分放在request uri里,多个参数用&分隔。在Get请求中携带了多个参数。包括:
(1)service-names=nausf-auth。我要选择的网元是AUSF,并支持AUTH这个服务。
(2)requester-nf-type=AMF。请求者也就是我是谁?我是AMF。
(3)routing-indicator=0。这就是查询条件。拿RI来换AUSF的nfprofile(网元档案)。
NRF返回200 OK,包括了AUSF的nf profile(寻址信息和能力信息),主要参数有:
(1)validity Period:结果的有效期,这里是180秒。
(2)nf Instances:网元实例名。每个实例就代表一个活的网元,通常是uuid格式。
(3)nf Type:网元类型,这里返回AUSF。
(4)nf Status: REGISTERED。表示在NRF中的注册状态。这里是已注册。
(5)plmnList:目标网元支持的PLMN列表。-capacity:AUSF的静态容量。
(6)sNssais:AUSF所支持的切片。
(7)FQDN:AUSF的域名
(8)priority:AUSF优先级。
(7)nf Services:AUSF所支持的服务。-ipEndPoints:AUSF的IP和端口号。
(8)ausfinfo:ausf网元的特有参数。包括AUSF所支持的supi range:也就是用户IMSI号段。AUSF对应的group、以及关联的Routing indicator。
1.3 AMF请求AUSF进行鉴权并获取鉴权参数
AMF调用AUSF的authentication服务,请求AUSF对UE进行鉴权,该服务是HTTP Post方法。AUSF通常和UDM是合设的,因此AUSF会把SUPI或SUCI发给UDM,UDM据此选择UE的鉴权方法,并返回相关的鉴权向量组(如果收到的是SUCI,UDM需要先根据本地的私钥解密成SUPI。)。AUSF发201 Created响应,并把鉴权向量组返回给AMF。AMF给AUSF的请求消息:
(1)Request-uri是:/nausf-auth/v1/ue-authentications,是AUSF的鉴权服务入口。
参数包括SUCI和AMF的拜访地serving network name。AUSF回的201 created。主要参数有:
选择的鉴权算法authType:5G_AKA 表示UDM为UE选择的鉴权算法是5G AKA。
5g AuthData是鉴权参数组中的rand(随机数,要发给UE,用于UE计算鉴权结果)、autn(发给UE,用于UE对网络侧的鉴权)、hxresStar(发给AMF,用于AMF站在拜访地角度,比对鉴权结果。)
1.4 AMF向AUSF转发UE计算结果,AUSF进行鉴权比对
AMF站在拜访地角度对UE进行鉴权后(比对HRES*和HXRES*),再次调用AUSF的auth服务(PUT方法)将UE的计算结果RES*发给AUSF进行比对。AUSF比对成功后返回200 OK。AMF-->AUSF的PUT请求,主要参数有:
(1)request-uri:/nausf-auth/v1/ue-authentications/112233/5g-aka-confirmation。其中112233是authctxid
(2)res*:UE计算出的鉴权结果。
AUSF给AMF的响应参数包括
(1)authresult:鉴权结果。本例取值为success表示鉴权成功。
(2)Kseaf:用于密钥派生的Kseaf。
(3)supi:UDM解密后的SUPI,由AUSF发给AMF。
1.5 AMF对UE发起安全流程(加密和完整性保护)
AMF接下来可以对UE发起安全流程,用于NAS消息的加密和完整性保护(防止被篡改),对应的NAS消息是Security mode Command和Security mode Complete。
AMF-->UE的Security mode Command主要参数有:
(1)NAS security algorithms:网络侧选择的加密和完整性保护算法。本例取值是5G-EA0和128-5G-IA1
(2)UE security capability:UE的安全能力。其实也是之前从UE收到的。
(3)IMEISV request:AMF可以借此向UE要求提供IMEISV。
(4)ngKSI:NAS安全上下文标识。
UE-->AMF UE的Security mode Complete主要参数有:
(1)Security header type取值为4,表示带有新5G安全上下文和完保、加密的消息。
(2)Message authentication code:消息摘要码。用于完整性保护。
(3)5GS mobile identity:UE返回的IMEISV。
1.6 AMF根据SUPI查NRF得到UDM
AMF接下来要去到UDM中做注册登记(UECM服务)和获取签约数据(SDM服务)。因此,AMF调用NRF的Discovery服务,发起UDM的查询。用的是HTTP Get方法。NRF返回200 OK,包含了UDM的nfprofile。
Get请求中的主要参数包括:
(1)service-names=nudm-sdm,我要选择的网元是UDM,并支持SDM这个服务。
(2)requester-nf-type=AMF,请求者也就是我是谁?我是AMF。
(3)SUPI=imsi。这就是查询条件,拿SUPI来换UDM的nfprofile(网元档案)。
UDM返回的信息包括:
(1)所有网元的公共参数:validity Period(结果有效期)、nfInstances(网元实例名)、nfType(网元类型,本例为UDM)、nfStatus(注册状态)、priority(网元的优先级)、capacity(网元的静态容量值)、nfServices(UDM所支持的服务)
(2)UDM特有的参数udminfo:包括supirange(UDM支持的UE号段)、routing-indicator(UDM支持的Routing Indicator的范围)
标签:AMF,AUSF,网元,核心网,UE,5G,鉴权,UDM From: https://www.cnblogs.com/sunfie/p/18522101