好的,我们继续对TS 23.222的深度拆解。

这是系列文章的第二篇,我们将聚焦于规范的第一、二、三章:Scope, References, Definitions and abbreviations。这部分内容是整个CAPIF(通用API框架)的“地基”,清晰地定义了它的使命、技术生态和核心术语。


深度解析 3GPP TS 23.222:第一至三章 CAPIF的“宪章、盟友与词典”

本文技术原理深度参考了3GPP TS 23.222 V18.7.0 (2024-12) Release 18规范中,作为规范开篇的第一、二、三章。本文旨在为读者系统性地构建一个关于CAPIF(通用API框架)的坚实地基,我们将深入解读其技术范围、核心依赖以及贯穿全文的“行话”,为后续深入复杂的架构与流程做好准备。

引言:为“开放网络”立宪

在上一篇概览中,我们跟随应用开发者**“极客小创”**的脚步,了解了CAPIF是如何将运营商杂乱无章的“API丛林”,改造成一个井然有序的“API应用市场”的。我们知道,CAPIF的诞生,是为了解决3GPP网络能力开放过程中的“重复”和“不一致”问题。

现在,在深入探索这个“API市场”的具体“摊位布局”(功能模型)和“交易流程”(Procedures)之前,我们必须首先仔细研读它的“市场管理条例”——这就是规范的第一、二、三章。它为这个面向未来的开放框架,制定了最基本的规则和通用语言。

今天,我们将扮演“市场规则制定者”的角色,逐一审视这份开篇文件,看看它是如何定义这个API市场的管辖边界(Scope)、确认有哪些重要的**“战略合作伙伴”(References),并为所有“商户”和“顾客”提供一本通用的“商业术语词典”(Definitions and abbreviations)**的。


1. 第一章 Scope (范围):划定CAPIF的“管辖权”

The present document specifies the architecture, procedures and information flows necessary for the CAPIF. The aspects of this specification include identifying architecture requirements for the CAPIF (e.g. registration, discovery, identity management) that are applicable to any service APIs when used by northbound entities…

  • 核心使命: 规范的使命非常清晰——为CAPIF定义架构、流程和信息流。它的核心工作,是识别出那些对于任何北向业务API通用的架构需求,例如:
    • 注册 (Registration): API提供者如何将自己的API“上架”到市场?
    • 发现 (Discovery): API调用者如何在这个市场里“找到”自己需要的API?
    • 身份管理 (Identity Management): 如何管理市场的“商户”(API提供者)和“顾客”(API调用者)的身份?

The common API framework applies to both EPS and 5GS, can be hosted within a PLMN or SNPN, and is independent of the underlying 3GPP access (e.g. E-UTRA, NR).

  • 技术边界: 这一段话为CAPIF划定了极其广阔的“管辖边界”:
    1. 跨代际: CAPIF并非5G独有,它同样适用于4G EPS网络。这意味着,4G的SCEF和5G的NEF,都可以被纳入CAPIF的统一管理框架之下。
    2. 跨网络类型: CAPIF不仅可以部署在传统的**公共移动网络(PLMN)中,也可以部署在5G独立非公共网络(SNPN,即5G私网)**中。这为其在垂直行业的应用铺平了道路。
    3. 接入无关性: CAPIF工作在核心网的业务层,它不关心用户是通过4G基站(E-UTRA)还是5G基站(NR)接入的。这是一个纯粹的、高层级的API治理框架。

总结: Scope章节告诉我们,3GPP的雄心是打造一个统一的、跨越4G/5G、覆盖公网/私网的API通用治理框架,以“一劳永逸”地解决北向API的碎片化问题。


2. 第二章 References (参考文献):CAPIF的“巨人们的肩膀”

本章的引用列表,揭示了CAPIF并非凭空创造,而是站在了3GPP内部能力开放(NEF/SCEF)、ETSI边缘计算(MEC)和OMA(开放移动联盟)网络API等多个“巨人”的肩膀之上。

  • 3GPP内部依赖:
    • TS 23.682 & TS 23.501: 分别是4G的SCEF和5G的NEF的架构规范。这两个网元是CAPIF中**API暴露功能(AEF)**的核心扮演者,是CAPIF框架落地和承载的具体实体。
    • TS 33.122 & TS 33.501: 分别是CAPIF安全5G系统安全的规范。CAPIF的所有认证、授权、机密性保护等安全机制,都必须遵循这些安全规范的要求。
  • 外部生态借鉴:
    • ETSI GS MEC 009/011: ETSI(欧洲电信标准化协会)的**移动边缘计算(MEC)**规范。MEC是业界最早探索网络能力开放和API化的重要力量之一。3GPP在设计CAPIF时,充分借鉴了MEC在API发现、注册等方面的成功经验,以确保两大生态系统的协同与对齐。
    • OMA-ER_Autho4API / OMA-TS-REST_NetAPI_Common: **OMA(开放移动联盟)**关于“网络API授权框架”和“RESTful网络API通用定义”的规范。OMA在北向API标准化方面同样进行了大量开创性工作。CAPIF的设计,特别是其对RESTful风格和OAuth 2.0的采纳,深受OMA规范的影响。
    • IETF RFC 6749: OAuth 2.0授权框架的“圣经”。CAPIF的整个授权体系,都构建在OAuth 2.0这一互联网事实标准之上。

这个引用列表告诉我们,CAPIF是一个博采众长的“集大成者”。它融合了3GPP自身、ETSI MEC和OMA的最佳实践,并以开放的IETF标准为安全基石,旨在打造一个真正开放和面向未来的API生态。


3. 第三章 Definitions and abbreviations (定义与缩略语):CAPIF世界的“行话”

第三章是整部规范的“语言基础”,它定义了理解CAPIF架构所必需的一整套全新术语。掌握它们,是读懂后续所有流程图的“入场券”。

3.1 核心角色 (Entities)

  • API invoker: API调用者。“极客小创”的应用。它可以是一个部署在云端的服务器,也可以是一个运行在UE上的App。
  • API provider: API提供者。提供具体业务API的实体。
  • Resource owner (RO): 资源所有者。API所操作的“资源”的最终主人。在很多场景下,这个角色就是最终用户(如美美)。例如,一个位置API,其暴露的“资源”就是用户的地理位置,而用户本人,就是这个资源的“所有者”。

3.2 核心功能 (Functions)

API exposing function (AEF): The entity which provides the service communication entry point for the service APIs.

  • 解读: API暴露功能。API的“安全门禁”,通常由NEF/SCEF扮演。

API publishing function (APF): The entity that enables the API provider to publish the Service APIs information…

  • 解读: API发布功能。API的“上架工具”。

API management function (AMF): The entity which enables the API provider to perform administration of the service APIs.

  • 解读: API管理功能。API的“后台管理系统”。

CAPIF core function (CCF): A framework comprising common API aspects that are required to support service APIs.

  • 解读: CAPIF核心功能。整个“API市场”的“中央管理办公室”,提供发现、授权、认证等核心服务。

Authorization function: The entity which issues access tokens to the API invokers…

  • 解读: 授权功能。负责颁发“通行证”(Access Token)的部门,通常是CAPIF核心功能的一部分。

3.3 核心概念 (Concepts)

Northbound API: A service API exposed to higher-layer API invokers.

  • 解读: 北向API。“北向”是一个架构术语,通常指上层(应用层)调用下层(网络层)的接口。相对于3GPP核心网内部网元之间互相调用的“南向接口”,CAPIF管理的API都是暴露给外部应用的“北向接口”。

Onboarding: One time registration process that enables the API invoker to subsequently access the CAPIF and the service APIs.

  • 解读: 入驻/上线。API调用者在CAPIF的“一次性注册”过程。

Resource owner-aware northbound API access (RNAA): An API invocation scenario where the API invoker needs an authorization from the resource owner.

  • 解读: 资源所有者感知的北向API访问。这是一个极其重要的安全概念。它指的是,在调用某些敏感API之前,必须征得资源所有者(即用户)的同意
  • 场景关联: “极客小-创”的无人机应用,想要获取美美(作为无人机包裹的接收者)的实时位置,以进行精准降落。此时,CAPIF会启动RNAA流程:
    1. 应用向CAPIF请求授权。
    2. CAPIF的授权功能,通过某种方式(如向美美的手机推送一个授权请求弹窗),征求美美的同意:“应用‘无人机物流’请求获取您的实时位置,是否同意?”
    3. 只有在美美点击“同意”后,CAPIF才会为该应用颁发能够访问位置API的访问令牌。

FAQ环节

Q1:CAPIF和NEF/SCEF是什么关系?CAPIF会取代NEF/SCEF吗? A1:CAPIF不会取代NEF/SCEF,它们是**“框架”与“实现”**的关系。

  • CAPIF: 是一个抽象的、通用的框架。它定义了一系列逻辑功能(如AEF, APF, CCF)和它们之间的交互。
  • NEF/SCEF: 是3GPP定义的具体的网络功能实体,它们的核心职责就是“暴露网络能力”。 在实际部署中,NEF/SCEF会**“实现(implement)”**CAPIF框架。例如,一个NEF产品,其内部会包含一个AEF模块(用于暴露API)、一个APF模块(用于发布API)、甚至可能还集成了一个小型的CCF(CAPIF核心功能)。可以说,CAPIF为NEF/SCEF的设计,提供了一套标准化的“指导原则”和“架构蓝图”

Q2:API invoker profile(API调用者档案)里都包含了什么信息? A2:它就像是API调用者在CAPIF市场的“会员档案”,在onboarding时创建。里面通常包含:

  • 身份信息: 调用者的唯一ID、认证凭证(如客户端ID/密钥)。
  • 授权信息: 该调用者被授权可以访问的API列表、可以使用的授权模式(如客户端凭证模式、授权码模式)。
  • 策略信息: 适用于该调用者的策略,如调用速率限制、计费策略等。
  • 联系信息: 用于接收事件通知的回调URL等。

Q3:为什么需要一个单独的Resource Owner Function (ROF)? A3:ROF是实现RNAA(资源所有者感知)流程中,代表资源所有者(用户)意志的逻辑实体。

  • 在技术上,当CAPIF的授权功能需要征求用户同意时,它需要与一个能够安全、可靠地与用户交互的实体进行通信。这个实体就是ROF。
  • 在实际部署中,ROF可以有多种形态。例如,它可以是手机操作系统上的一个安全弹窗服务,也可以是运营商提供的一个网页授权门户。 ROF的存在,将“向用户请求授权”这一通用功能,从CAPIF核心中抽象出来,使得授权的交互方式可以灵活多样。

Q4:CAPIF框架本身,也是通过API来提供服务的吗? A4:是的。这正是CAPIF服务化设计的精髓。CAPIF核心功能(CCF)本身,就向外部(如API调用者、API发布者)暴露了一系列的**“CAPIF API”**。

  • API调用者通过调用**CAPIF_Discover_Service_API**来发现API。
  • API发布者通过调用**CAPIF_Publish_Service_API**来发布API。
  • API调用者通过调用**CAPIF_Security_API**来获取授权。 整个CAPIF生态,都是构建在一套标准化的、基于RESTful的API之上的。

Q5:学习完这三章,我应该对这份规范形成一个怎样的宏观印象? A5:你应该形成这样一个印象:TS 23.222是一份具有革命性意义的“框架”规范。它跳出了传统3GPP规范聚焦于单个网元或接口的“点线”思维,首次从“平台”和“生态”的视角,为整个3GPP网络的能力开放,提供了一个统一的、顶层的治理框架。它通过定义一系列清晰的角色、功能和交互原则,旨在将复杂的、异构的电信网络能力,转化为开发者友好的、易于发现和使用的标准化API服务,是3GPP迈向真正“开放网络”时代的最重要基石。