在 5G 主认证(5G-AKA / EAP-AKA')完成之后,UE 已经被证明是某个 PLMN 的合法签约用户,AMF 也已经下发 Allowed NSSAI,看上去 UE 似乎"拿到了全部钥匙"。但对于企业专网切片、第三方行业切片、SNPN(独立非公开网络)而言,主认证只回答了一个问题——"你是运营商的签约用户吗?"——它并没有回答切片真正关心的那个问题:"你被授权使用我这个切片/企业内网吗?"
NSSAA(Network Slice-Specific Authentication and Authorization,网络切片专属认证与授权)就是为这道"第二道闸门"设计的。它自 3GPP Rel-16 引入(TS 33.501 Clause 16、TS 23.502 4.2.9),并在 Rel-17 与 SNPN 接入认证融合增强(TS 29.526)。其核心思想是:把某个 S-NSSAI 的鉴权决策权,交给切片归属的 AAA-S(AAA Server)——也就是企业/行业自己的认证服务器,由它用 EAP 框架对 UE 做一次独立的、方法可定制(EAP-AKA'、EAP-TLS、EAP-TTLS 等)的认证与授权。
这套机制带来的工程价值有三点:
很多早期资料把 AUSF 描述成 NSSAA 的 EAP 代理,这是不准确的。从 Rel-16 起,3GPP 定义了一个独立的网络功能 NSSAAF(Network Slice-Specific Authentication and Authorization Function),专门承担"5GC 与切片 AAA 之间的桥梁"职责。其服务接口 Nnssaaf 由 TS 29.526(Stage 3)定义。
| 网元 | 角色 | 关键行为 |
|---|---|---|
| UE | EAP 对等端 | 收发 EAP 报文(封装在 NAS 专属消息中) |
| AMF | 协调者 | 识别需 NSSAA 的 S-NSSAI、维护 Pending NSSAI、触发/接收 NSSAAF 结果 |
| UDM | 签约存储 | 每个 S-NSSAI 带 nssaaIndicator 标志 |
| NSSAAF | EAP 中继+策略锚点 | 在 AMF 与 AAA-S 之间转发 EAP,并保存授权结果 |
| AAA-S | 真正的鉴权者 | 切片归属 AAA,执行 EAP 方法、判定成功/失败 |
NSSAAF 与 AUSF 的本质区别:AUSF 绑定于主认证(HSS/UDM 凭据、KAUSF 密钥派生),而 NSSAAF 与主密钥体系完全无关,它只做"EAP 透传 + 结果记录",因此可以被企业域、SNPN 域复用而不污染主认证密钥层级。
下图描绘了一次完整的初始注册中触发 NSSAA 的端到端流程,包括 EAP 挑战往返、Pending→Allowed 的状态跃迁:
sequenceDiagram
autonumber
participant UE
participant AMF
participant UDM
participant NSSAAF
participant AAA-S
Note over UE,AAA-S: 阶段0:主认证已完成(5G-AKA),UE 已获安全上下文
UE->>AMF: Registration Request<br/>(Requested NSSAI 含需NSSAA的S-NSSAI)
AMF->>UDM: Nudm_SDM_Get (SUPI, 切片签约)
UDM-->>AMF: 订阅数据 (S-NSSAI + nssaaIndicator=true)
Note right of AMF: 将该S-NSSAI放入 Pending NSSAI
AMF->>NSSAAF: Nnssaaf_NSSAA_Authenticate<br/>(SUPI, S-NSSAI, EAP-Response/Identity, 路由信息, GPSI)
NSSAAF->>AAA-S: 转发EAP (Diameter/RADIUS)
loop EAP挑战往返(多次)
AAA-S-->>NSSAAF: EAP-Request (挑战)
NSSAAF-->>AMF: Nnssaaf_NSSAA_Authenticate Response (EAP)
AMF->>UE: NAS: NETWORK SLICE-SPECIFIC<br/>AUTHENTICATION COMMAND (S-NSSAI,EAP)
UE-->>AMF: NAS: NETWORK SLICE-SPECIFIC<br/>AUTHENTICATION COMPLETE (EAP)
AMF->>NSSAAF: Nnssaaf_NSSAA_Authenticate (EAP)
NSSAAF->>AAA-S: 转发EAP
end
AAA-S-->>NSSAAF: EAP-Success + Authorization Data<br/>(允许DNN、重认证周期)
NSSAAF-->>AMF: 结果=SUCCESS, Authorization Data, Re-auth Period
Note right of AMF: S-NSSAI: Pending → Allowed NSSAI
AMF-->>UE: Registration Accept (Allowed NSSAI 含该切片)
时序图中有几个常被忽略但极其关键的细节:
S-NSSAI IE 和 EAP message IE,AMF 据 S-NSSAI 把 EAP 路由到对应的 NSSAAF 会话。下图把"Nnssaaf_NSSAA_Authenticate 请求体"和"NAS 封装消息"的 IE 结构并列展示,这是排错时最容易出问题的两层封装:
flowchart LR
subgraph A[Nnssaaf_NSSAA_Authenticate Request Body]
A1["SUPI"]:::ie
A2["S-NSSAI (切片标识)"]:::ie
A3["EAP Packet (来自UE)"]:::ie
A4["AAA路由指示<br/>(选AAA-S)"]:::ie
A5["GPSI (可选)"]:::ie
end
subgraph B[NAS: NSSAA COMMAND/COMPLETE]
B1["扩展协议头EPH"]:::ie
B2["S-NSSAI IE"]:::ie
B3["EAP Message IE"]:::ie
end
A3 -. "同一EAP报文" .-> B3
A2 -. "同一S-NSSAI" .-> B2
classDef ie fill:#e8f4f8,stroke:#2b7a8b,stroke-width:1px;
| IE 名称 | 所在消息 | 作用 | 排错关注点 |
|---|---|---|---|
S-NSSAI |
Request / NAS 消息 | 标识当前认证哪个切片(SST+SD) | SD 是否与 UDM 签约一致 |
EAP message |
NAS 消息 | 携带 EAP-Request/Response | 抓包看 EAP Code/Type 是否符合预期方法 |
nssaaIndicator |
UDM 订阅数据 | 触发 AMF 走 NSSAA | 该标志未置位则 AMF 不会触发 |
AAA routing |
Request | 选路到正确 AAA-S | 路由错误会超时 |
Authorization Data |
Response | 允许的 DNN、SSC、重认证周期 | 切片通了但 DNN 不匹配仍无法建会话 |
Re-auth Period |
Response | 下次重认证时间 | 到期前 AAA-S 会主动发起重认证 |
切片授权是有状态的,AMF 内部对每个 S-NSSAI 维护一个有限状态机。理解这个状态机,是定位"切片时通时不通"类故障的钥匙:
stateDiagram-v2
[*] --> Pending: 注册请求该切片<br/>nssaaIndicator=true
Pending --> Allowed: NSSAA成功<br/>(EAP-Success)
Pending --> Rejected: NSSAA失败/超时<br/>(EAP-Failure)
Allowed --> Pending: AAA-S发起重认证<br/>(Re-Auth Notification)
Allowed --> Revoked: AAA-S吊销<br/>(Revocation Notification)
Revoked --> [*]: AMF移除切片<br/>UCU下发+释放PDU会话
Rejected --> Pending: UE重新发起
吊销(Revocation)是最具破坏性的状态迁移:AAA-S 一旦判定不可信,会经 NSSAAF 向 AMF 发 Revocation Notification(TS 29.526),AMF 必须:① 把该 S-NSSAI 从 Allowed NSSAI 移除;② 通过 UE CONFIGURATION UPDATE COMMAND 下发新的 Allowed NSSAI;③ 释放所有归属该切片的 PDU 会话(触发 SMF 执行 PDU Session Release)。这意味着一个企业用户的证书被吊销,业务会立即被切断,而无需等用户主动去注册。
这套机制并非随意拼接,每一处都对应一个安全工程目标:
KAUSF),若让它同时对接外部企业 AAA,会把企业 AAA 的信任边界"焊接"到主密钥体系上,一旦企业 AAA 被攻破将威胁全网主认证。独立 NSSAAF 形成物理与逻辑的双重隔离。很多人把 NSSAA 与"二次认证(Secondary Authentication,TS 33.501 §13)"混淆。两者都用 EAP,但作用域完全不同:
| 维度 | NSSAA(切片级) | Secondary Auth(PDU会话级) |
|---|---|---|
| 粒度 | 每个 S-NSSAI | 每个 PDU 会话 / DNN |
| 触发时机 | 注册阶段 | PDU 会话建立阶段 |
| 鉴权服务器 | AAA-S(切片归属) | DN-AAA(数据网归属) |
| 影响面 | 改变 Allowed NSSAI | 改变该会话是否接入数据网 |
| 触发网元 | AMF | SMF |
| Stage 3 规范 | TS 29.526(Nnssaaf) | TS 29.525(Nssaaf for SMF/DN-AAA) |
简言之:NSSAA 决定"能不能进这个切片",Secondary Auth 决定"进切片后能不能连这个 DNN",二者可叠加。
如何在抓包中识别 NSSAA 流程(TShark 过滤示例):
nas_5gs.message_type == 88 || nas_5gs.message_type == 89(NETWORK SLICE-SPECIFIC AUTHENTICATION COMMAND / COMPLETE),并观察其内嵌的 eap.code 与 eap.type。POST /nnssaaf-nssaa/v1/{supi}/authenticate,请求体含 eapPayload(base64)。DER/DEA(cmd-code 264)或 RADIUS Access-Request,看内层 EAP-Message 属性。典型故障与定位思路:
Authorization Data 中允许 DNN 是否与终端请求一致,常见是 SD 配错导致授权数据为空集。Revocation Notification 时间戳,回溯 AAA-S 吊销原因。Re-auth Period 设得过短或 AAA-S 反复触发,需在企业 AAA 侧调整周期。Q1:NSSAA 与主认证 5G-AKA 的密钥有关系吗?
A:没有。NSSAA 走独立的 EAP 流程,其密钥材料(如 EAP-AKA' 派生的 K_ext 或 EAP-TLS 的会话密钥)仅用于该切片的会话级保护,不参与 5G 主密钥层级(K→KSEAF→KAMF)的派生。这是隔离设计的直接体现。
Q2:UE 怎么知道一个切片需要 NSSAA?
A:UE 在注册时不一定知道。是 AMF 从 UDM 取到 nssaaIndicator=true 后,主动发起 NSSAA;UE 只需响应 NAS 层的 NETWORK SLICE-SPECIFIC AUTHENTICATION 消息。对 UE 而言,EAP 方法(如 EAP-TLS 证书)需提前预置。
Q3:漫游场景下 NSSAA 怎么走? A:NSSAAF 通常部署在 VPLMN(拜访地),负责中继;AAA-S 位于切片归属的 HPLMN 或企业域。中间可能经过 AAA-P(AAA 代理),路由由 NSSAAF 的选路配置与 UDM 提供的归属信息共同决定。
Q4:NSSAA 失败时 UE 会怎样? A:该 S-NSSAI 进入 Rejected 状态,AMF 下发的 Allowed NSSAI 不含该切片。UE 主注册仍成功(除非该切片是默认切片且无替代),仅无法使用该切片业务。UE 可在退避后重新请求。
Q5:NSAC(切片准入控制)和 NSSAA 是一回事吗? A:不是。NSSAA 解决"你是否有权用这个切片"(身份+授权),NSAC(Rel-17,TS 23.502)解决"这个切片还能不能容纳更多 UE"(容量准入)。两者互补:先 NSSAA 鉴权,再 NSAC 看配额。
本文由「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 等场景全覆盖。
