跳到主要内容

了解场景通应用

应用(Application)是业务系统接入中台、访问所有API服务的唯一身份凭证安全认证载体。每一个appId 都代表一个被中台唯一识别的业务系统。

根据创建者和使用场景的不同,应用分为两种核心类型:客户应用ISV应用

核心概念:两种应用类型

1. 客户应用

  • 创建者:由最终客户(项目的所有者)创建和管理。
  • 目的:用于接入客户自研的业务系统。
  • 权限特点:应用创建后,天然具备其所属客户名下项目的API调用权限。权限管理直接且简单。
  • 适用场景:客户拥有自己的技术团队,直接为其自身的业务场景(项目)开发应用系统。

2. ISV应用

  • 创建者:由第三方服务商(ISV) 创建和管理。
  • 目的:用于接入ISV开发的、旨在为多个客户提供标准化解决方案的业务系统。
  • 权限特点:ISV应用默认无权访问任何客户的项目数据。必须经过特定客户的显式授权(授权流程),才能代表该客户调用其项目下的API。
  • 适用场景:软件公司、解决方案提供商为他们的客户(即我们的最终客户)提供软件服务。例如,一个ISV开发了一套智慧食堂SaaS系统,让多家企业客户使用。

核心作用与价值

  • 身份认证 (Authentication): 中台通过验证appId和其请求签名,来确认API调用者的合法身份,并区分是客户自研调用还是ISV代调用。
  • 访问授权 (Authorization): 应用的类型和授权关系决定了其有权访问哪些客户的项目和服务。
  • 安全保障 (Security): 签名机制确保请求传输安全,防止篡改和重放攻击。
  • 数据隔离与统计 (Isolation & Statistics): 所有API调用都以应用为维度进行计量、计费和日志记录,实现清晰的数据隔离和运营分析。

API调用中的关键参数

在每次API请求中,与应用身份认证和授权相关的关键参数如下表所示:

参数名类型必填描述
appIdString应用的唯一ID,表明调用者身份。
mchIdString开发者/客户ID
-客户应用:填入客户mch_id
-ISV应用:填入ISV自身的mch_id
projectIdString否 (特定接口必填)项目ID,表明本次请求希望访问哪个项目所订阅的服务。

重要提示:ISV应用在调用已授权项目的API时,mch_id参数必须填写ISV自己的ID,而非其客户的ID。这是中台识别ISV身份并校验其授权关系的依据。

写在最后

开发者应用是连接业务系统与中台能力的安全桥梁。明确区分客户应用ISV应用是构建开放生态的基础。

  • 客户应用体现了客户对自身业务的直接控制
  • ISV应用体现了中台生态的开放性,允许第三方服务商在获得授权后,安全地为客户提供价值。
信息

无论哪种类型,妥善保管App Secret并在安全的服务器环境下进行签名计算,是保障通信安全的首要责任。