首页 › core-network › 5G切片NSSAA鉴权机制拆解

5G切片NSSAA鉴权机制拆解:从主认证到切片租户二次授权的信令全链

一、为什么需要"切片二次鉴权":设计意图与架构定位

5G网络切片(Network Slicing)让运营商可以把一张物理网络切出多个逻辑网络,分别服务于 eMBB、URLLC、mMTC 以及垂直行业专网(车联网、工业、医疗等)。但这里引出一个传统网络没有的安全问题:主网络认证(Primary Authentication,5G AKA / EAP-AKA')只能证明"这个 UE 是运营商网络的合法签约用户",却无法证明"这个 UE 有权接入某一个特定的行业切片"。

举个例子:运营商把 SST=1(eMBB)的公共切片开放给所有签约用户;同时为某汽车厂部署了 SST=2 / SD=0xABCD 的车联网切片,该切片由汽车厂的 AAA 服务器(AAA-S)独立管理凭据。一个普通消费者 UE 即使是运营商合法用户,也不应自动获得车联网切片的接入权——它必须再被汽车厂自己的 AAA-S 鉴权一次。

这就是 3GPP 在 Rel-16 引入的 NSSAA(Network Slice-Specific Authentication and Authorization,网络切片特定鉴权与授权),俗称"切片二次鉴权"。其规范定义在:

设计上 NSSAA 有三条核心原则:

  1. 与主认证解耦:主认证(AUSF/UDM)只管"是否网络用户";切片认证由切片租户自己的 AAA-S 独立裁定,运营商不必掌握垂直行业的凭据库。
  2. EAP 方法中立:切片租户可自选 EAP 方法(EAP-AKA' 复用 5G 凭据,或 EAP-TLS 用企业证书),3GPP 不绑死。
  3. AMF 透明中继:AMF 既不终结 EAP,也不解读切片凭据,仅做"搬运工",把 UE 与 AAA-S 之间的 EAP 报文来回转发,保证端到端安全语义不被核心网破坏。

二、参与网元与角色:谁是 Peer、谁是 Authenticator

NSSAA 涉及的核心网元及其在 EAP 模型中的角色如下。理解角色划分,是看懂整条信令链的前提。

flowchart TD
  subgraph UE侧
    UE["UE<br/>EAP Peer / 请求方"]
  end
  subgraph 5G核心网
    AMF["AMF<br/>EAP 透明中继<br/>(Authenticator 前端)"]
    NSSAAF["NSSAAF<br/>3GPP侧EAP终结<br/>+ AAA协议适配"]
    UDM["UDM<br/>订阅数据(NSSAA required)"]
  end
  subgraph 切片租户域
    AAAS["AAA-S (可经AAA-P)<br/>实际认证方 / 凭据库"]
  end
  UE <-->|NAS: EAP message + S-NSSAI| AMF
  AMF <-->|"Nnssaaf_NSSAA (HTTP/2 SBI)"| NSSAAF
  NSSAAF <-->|AAA协议: RADIUS / Diameter| AAAS
  UDM -->|Nudm_SDM 订阅指示| AMF

需要特别强调两个容易混淆的角色:

当 AAA-S 属于第三方(例如企业)时,还可以插入 AAA-P(AAA Proxy) 做路由与策略隔离,TS 33.326 对 AAA-P 存在时的安全要求有专门约束。


三、NSSAA 完整信令时序与 IE 逐步解析

下面是端到端信令时序。注意:NSSAA 一定发生在主认证完成之后——AMF 只有在 UE 通过 5G AKA / EAP-AKA' 主认证、拿到 SUPI 之后,才会去 UDM 取订阅数据、判断哪些 S-NSSAI 需要二次鉴权。

sequenceDiagram
  participant UE
  participant AMF
  participant UDM
  participant NRF
  participant NSSAAF
  participant AAA as AAA-S / AAA-P
  UE->>AMF: 1. Registration Request<br/>(Requested NSSAI 含需NSSAA的 S-NSSAI)
  AMF->>UDM: 2. Nudm_SDM_Get<br/>(Slice Selection Subscription Data)
  UDM-->>AMF: 3. 每S-NSSAI: NSSAA required +<br/>routing indicator / AAA地址 / GPSI
  Note over AMF: 4. 主认证(5G AKA)完成后<br/>遍历需NSSAA的切片
  AMF->>NRF: 5. Nnrf_NFDiscovery<br/>(nfType=NSSAAF, S-NSSAI)
  NRF-->>AMF: 6. NSSAAF 实例信息
  AMF->>NSSAAF: 7. Nnssaaf_NSSAA_Authenticate Req<br/>(SUPI/GPSI, S-NSSAI, routing indicator)
  NSSAAF->>AAA: 8. 创建鉴权上下文,启动EAP会话
  AAA-->>NSSAAF: 9. EAP Request/Identity
  NSSAAF-->>AMF: 10. Nnssaaf_NSSAA_Authenticate Rsp(EAP包)
  AMF->>UE: 11. Downlink NAS Transport<br/>(Payload=EAP message + S-NSSAI)
  UE->>AMF: 12. Uplink NAS Transport(EAP + S-NSSAI)
  AMF->>NSSAAF: 13. Nnssaaf_NSSAA_Authenticate Req(EAP)
  NSSAAF->>AAA: 14. relay EAP
  AAA-->>NSSAAF: 15. EAP Challenge(AKA'/TLS)
  Note over UE,AAA: 16. EAP 多轮往返<br/>(AMF 全程透明中继)
  AAA-->>NSSAAF: 17. EAP Success + 授权数据<br/>(可选: DNN限制/有效期)
  NSSAAF-->>AMF: 18. Authenticate Rsp(Success,<br/>AuthorizedNetworkAssociation)
  Note over AMF: 19. S-NSSAI 从 Pending 移入 Allowed NSSAI
  AMF-->>UE: 20. Registration Accept / Config Update<br/>(Allowed NSSAI 更新)

逐条消息的关键 Information Element 解析:

第 1 步 Registration Request:UE 在 NAS 中携带 Requested NSSAI,其中包含一个或多个它想用的 S-NSSAI。这一步 UE 并不知道某个切片是否需要二次鉴权——这是网络侧的签约策略。

第 2-3 步 Nudm_SDM_Get(取订阅):AMF 向 UDM 取 Slice Selection Subscription Data。UDM 的响应里,针对每个 S-NSSAI 会带回: - 是否需要 NSSAA 的指示(nssaa required); - 用于路由到正确 AAA-S 的 routing indicator / AAA routing data; - 对外标识 UE 的 GPSI(给第三方 AAA-S 用,避免暴露 SUPI); - 选用的 EAP 方法偏好。

第 5-6 步 NRF 发现:AMF 通过 Nnrf_NFDiscovery 找到能服务该 S-NSSAI 的 NSSAAF 实例(按 S-NSSAI、PLMN 等过滤)。

第 7 步 Nnssaaf_NSSAA_Authenticate Request(TS 29.526):这是 NSSAA 的核心 SBI 调用,主要 IE 见下表。

第 11-16 步 NAS 上的 EAP 传输:AMF 用 Downlink / Uplink NAS Transport 消息承载 EAP 报文,Payload Container Type = EAP message,并附带目标 S-NSSAI,使 UE 与 AAA-S 的 EAP 交互在 AMF 看来是透明中继。这正是抓包时识别 NSSAA 的"指纹"(详见第六节)。

第 17-20 步 结果处理:EAP Success 后,NSSAAF 在响应中带 AuthorizedNetworkAssociation(已授权网络关联),AMF 据此把该 S-NSSAI 从 Pending NSSAI 移入 Allowed NSSAI,并通过 Registration Accept 或 UE Configuration Update 通知 UE。


四、S-NSSAI 授权状态机:Pending 与撤销

切片鉴权引入了一个新的 NSSAI 状态集合——Pending NSSAI(TS 23.501)。它装的是"正在进行或已失败的 NSSAA 切片"。一个 S-NSSAI 的授权状态转换如下:

stateDiagram-v2
  [*] --> Requested: Reg Req 携带 S-NSSAI
  Requested --> PendingNSSAI: UDM 订阅指示 NSSAA required
  PendingNSSAI --> PendingNSSAI: EAP 多轮往返中
  PendingNSSAI --> Allowed: EAP Success(AAA-S 授权)
  PendingNSSAI --> Rejected: EAP Failure / 超时
  Allowed --> PendingNSSAI: 周期性 re-auth 触发
  Allowed --> Revoked: AAA-S revoke(NSSAAF 通知 AMF)
  Revoked --> Rejected: 从 Allowed 移出
  Rejected --> [*]: UE 可重新发起请求

设计意图很清晰:未通过二次鉴权的切片不能进入 Allowed NSSAI,UE 自然无法为其建立 PDU Session。失败/超时的切片进入 Rejected,但 UE 仍可重新尝试(例如凭据更新后)。Rel-17/18 还增强了两个网络侧主动行为:


五、核心 IE 参数表与方案对比

表 1:Nnssaaf_NSSAA_Authenticate 关键参数

参数(IE) 方向 含义 设计用意
SUPI / GPSI AMF→NSSAAF UE 标识;对第三方 AAA-S 优先用 GPSI 隐藏 SUPI,保护用户隐私
S-NSSAI 双向 本次鉴权的目标切片 区分多个并行 NSSAA 会话
Routing Indicator / AAA routing data AMF→NSSAAF 路由到正确 AAA-S 一张网可对接多租户 AAA
EAP packet 双向 承载 EAP 报文(Identity/Challenge/Success…) 方法中立,NSSAAF 不解析算法
AuthorizedNetworkAssociation NSSAAF→AMF 成功后的授权关联 + 可选授权数据 回传 DNN 限制/有效期等租户策略
Authentication Result NSSAAF→AMF Success / Failure 决定 S-NSSAI 进 Allowed 还是 Rejected

表 2:主认证(5G AKA / EAP-AKA') vs 切片二次认证(NSSAA)

维度 主认证 Primary Auth 切片二次认证 NSSAA
规范 TS 33.501 clause 6.1.2 TS 33.501 clause 6.1.3 / TS 23.502 4.12.2
触发时机 注册首步 主认证成功后,按 S-NSSAI 签约触发
认证方 AUSF(+ UDM/SIDF) 切片租户 AAA-S(经 NSSAAF)
凭据来源 USIM(运营商 K) 切片专属凭据(证书/共享密钥,或复用 5G 凭据)
AMF 角色 协助参与 透明中继(pass-through)
结果影响 决定能否接入网络 决定能否接入某个切片(Allowed NSSAI)
撤销/再认证 一般无 支持 revoke 与 re-auth

表 3:常见 EAP 方法适用场景

EAP 方法 凭据形态 典型场景 说明
EAP-AKA' 复用 5G USIM 凭据 运营商自营切片 不需额外发卡,部署最轻
EAP-TLS X.509 证书(UE 侧客户端证书) 企业/工业/医疗专网 强认证,需 PKI 证书分发与吊销管理
其他(EAP-TTLS 等) 用户名口令等 受限场景 取决于 AAA-S 与终端支持

六、抓包识别与排错实战

抓包如何认出 NSSAA

常见故障点与排错思路

  1. 切片一直停在 Pending、永远进不了 Allowed:先查 UDM 订阅是否正确配置 NSSAA required 及 routing indicator/AAA 地址;再确认 NSSAAF 实例在 NRF 可被发现;最后看 AAA-S 侧凭据是否匹配、EAP 方法两端是否一致。
  2. EAP 超时(失败):数 EAP 往返轮数,定位是 AAA-S 响应慢、还是 UE EAP 栈不支持所选方法(尤其 EAP-TLS 客户端证书缺失)。
  3. 选错 NSSAAF:检查 NRF 发现的过滤条件(S-NSSAI、PLMN ID),多租户对接时易配串。
  4. Rel-17 SNPN 场景:注意 SNPN 接入凭据与切片凭据是两套,NSSAAF 同时承担两者,需区分上下文。

常见问题

Q1:NSSAA 和主认证 5G AKA 是什么关系?是不是重复鉴权? A:不重复,是"分层鉴权"。主认证证明"你是运营商网络的合法用户",决定能否接入 5G 网络;NSSAA 证明"某个切片租户(如汽车厂)授权你接入它的切片",决定能否用某张切片。二者串行执行,NSSAA 一定在主认证之后。

Q2:AMF 既然做中继,为什么不直接让 UE 和 AAA-S 通信? A:因为 UE 在 5G 内没有到外部 AAA 的 IP 通路,且必须用 NAS 信令面承载。AMF 做透明中继既复用了 NAS 安全通道(完整性/加密保护),又不让核心网解读切片租户的私有凭据,实现了端到端的安全语义隔离。

Q3:一个 UE 同时请求两个需要 NSSAA 的切片,流程怎么走? A:AMF 会为每个 S-NSSAI 分别发起独立的 NSSAA 会话(独立 Nnssaaf 上下文、独立 EAP 交换,可能对接不同 AAA-S)。某个切片鉴权通过即单独进入 Allowed NSSAI,互不阻塞。

Q4:NSSAA 失败了,UE 还能正常上网吗? A:能。NSSAA 失败只影响那一个(或几个)需要二次鉴权的切片被移出/拒绝,UE 仍可使用不要求 NSSAA 的切片(如公共 eMBB 切片)正常建立 PDU Session。但若被拒切片是 UE 唯一可用/默认切片,则注册可能被拒。

Q5:EAP-AKA' 和 EAP-TLS 在 NSSAA 里怎么选? A:由切片租户的 AAA-S 策略决定。EAP-AKA' 复用 USIM 上的 5G 凭据,适合运营商自营切片、零额外发卡;EAP-TLS 用企业证书,适合对认证强度要求高的工业/医疗专网,代价是要维护 PKI 与证书吊销(与 revocation 流程配合)。


参考来源

  1. 3GPP TS 23.502 — Procedures for the 5G System — clause 4.12.2 Network Slice-Specific Authentication and Authorization(含 re-auth / revocation 子流程)
  2. ETSI TS 129 526(= 3GPP TS 29.526)— Nnssaaf Service, Stage 3 — Nnssaaf_NSSAA 服务与 EAP 中继数据模型
  3. ETSI TS 133 326 — SCAS for NSSAAF — NSSAAF 安全保障要求,含 AAA-P 场景
  4. 3gpp-explorer — NSSAAF / NSSAA 词条 — EAP 方法中立性与角色说明(技术百科)
  5. free5GC Blog — 5G Network Slicing — 开源实现视角下的 AMF→Nnssaaf_NSSAA_Authenticate 调用

本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入