5GC基础自学系列 | 5GC基础番外篇之:基于NRF的SBI业务授权
Posted COCOgsta
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了5GC基础自学系列 | 5GC基础番外篇之:基于NRF的SBI业务授权相关的知识,希望对你有一定的参考价值。
视频来源:51学通信《5G核心网基础、协议与信令流程》
一边学习一边整理老师的课程内容及试验笔记,并与大家分享,谢谢支持!
附上汇总贴:5G基础自学系列 | 汇总
主要内容
介绍基于NRF的SBI业务授权方案
- 直接调用SBI接口的安全隐患
- 启动Oauth鉴权的背景
- NRF下发令牌流程
- 网元通过令牌调用服务的流程
SBA架构的安全隐患
5G SA架构启用了基于服务化的架构,每个网元(NF)对外暴露多个服务。通过HTTP API即可调用该网元的服务。
信令流程中的服务调用举例:
- 注册流程中,AMF需要调用UDM的Nudm_SDM服务,获取该用户的签约数据。
- PDU会话建立流程中,AMF需要调用SMF的PDUSession服务,请求SMF创建用户的会话管理上下文(SMContext)。
Oauth2.0鉴权概述
为了解决NF之间的身份鉴权问题,3GPP引入了成熟的Oauth2.0鉴权框架来解决这个问题。
Oauth2.0并不是5G专用的,它是一个应用之间彼此访问数据的开源授权协议。RFC6749中定义。
Oauth2.0在Google、微软、Facebook都有应用。
Oauth2.0鉴权框架中的3种角色:
- 客户端
- 资源服务器(Resource Server)
- 授权服务器(Authorization server)
Oauth2.0在5GC中的应用
NF之间的服务访问和授权功能和流程在33501中定义。
33501明确定义了Oauth2.0的3种角色和5G网元的对应关系:
- 客户端:是NF Service Consumer。即业务的消费者。也就是发起服务调用的一方。
- 资源服务器:是NF Service Producer。即业务的生产者。也就是提供服务的一方。
- 授权服务器:NRF。即NRF要负责产生Token(令牌)以及提供授权服务。
为了让NRF实现授权服务器的功能,NRF定义了一个专门的服务Nnrf_AccessToken。该服务可以为客户端生成令牌,用于后续服务的访问。
举个例子:
- 注册流程,AMF调用UDM的Nudm_SDM服务,获取该用户的签约数据。则AMF为Oauth2.0客户端,UDM为Oauth2.0资源服务器。NRF座位授权服务器产生Token并提供给AMF,AMF拿着令牌就可以去调用UDM的Nudm_SDM服务了。
TS33.501中定义的NF访问流程
基于令牌的业务访问流程举例
场景举例:PDU会话建立流程中,AMF需要调用SMF的SBI接口来创建PDU会话,在此之前,AMF需要调用NRF的Nnrf_AccessToken服务来获取令牌,拿着这个令牌去找SMF。
以上是关于5GC基础自学系列 | 5GC基础番外篇之:基于NRF的SBI业务授权的主要内容,如果未能解决你的问题,请参考以下文章