跳到主要内容

基本概念

目录​

一、数据连接​

二、集成流程​

三、数据服务​

四、API​

五、资源组​

六、项目​

七、机构​

八、角色​

九、用户​

十、API门户​

十一、应用系统​


用户级概念(数据连接、集成流程、数据服务、API、资源组、应用系统):

  • 主要用于业务系统和日常操作
  • 可由普通用户创建和管理
  • 属于"工作资源"类别
  • 适合采用更灵活的权限模型

租户级概念(机构、角色、用户、门户、项目):

  • 构成了系统的组织和权限基础架构
  • 只有系统管理员可以创建和管理
  • 属于"系统结构"类别
  • 需要更严格的权限控制

租户级与用户级的区分为权限模型设计提供理论基础:租户级资源需要集中管理,而用户级资源可以赋予更多自主权。

一、数据连接​

TUS采用以数据为中心的命名方式,将所有与外部系统的交互统称为"数据连接"。从数据流动的角度来看:系统集成的目的是实现数据交换和共享,无论是SOAP、REST、数据库连接还是文件传输,最终都是为了交换数据。虽然连接的技术和协议不同,但都涉及数据传输,因此从功能性和最终目的 的角度,将各种类型的连接统一命名为"数据连接"。

数据连接是用于访问外部数据源或服务的配置实体,定义了与外部系统建立通信所需的各种参数和认证信息。数据连接具有以下核心特征:

  1. 连接类型多样性:支持多种类型的连接,包括:
    • 关系型数据库(MySQL、Oracle、PostgreSQL等)
    • NoSQL数据库(MongoDB、Redis等)
    • 消息队列(Kafka、RabbitMQ、JMS等)
    • Web服务(REST、SOAP、Dubbo、gRPC等)
    • 文件传输(FTP/SFTP)
    • 网络协议(Socket、WebSocket、HTTP等)
    • 特定领域协议(HL7、AS2等)
  2. 配置信息包含:
    • 基础连接信息:主机地址、端口、数据库名等
    • 认证信息:用户名、密码等
    • 连接池配置:最大连接数、超时设置等
    • 特定协议参数:不同类型连接的特定配置
  3. 资源组织管理:
    • 通过资源组层级结构进行分类组织
    • 支持按类型、业务域等多维度分类
  4. 生命周期管理:
    • 创建、编辑、更新、测试、删除等管理功能

数据连接是应用集成和数据交换的基础构件,它封装了与外部系统通信的复杂性,为业务流程和API提供了稳定可靠的数据访问层。通过数据连接,系统能够以统一的方式访问各种异构数据源和服务,实现数据的无缝集成。

二、集成流程​

集成流程是一种连接不同应用系统、数据源和服务的方法,用于设计、构建和管理系统间的数据流和业务流程。它通过可视化的流程设计工具,将各种组件(如API调用、数据转换、业务规则等)进行编排。在TUS平台中,集成流程作为ESB(企业服务总线)的核心部分,负责系统间的消息处理和业务流转。

主要特点

  1. 可视化设计:通过拖拽组件完成流程设计,无需深厚编程基础
  2. 丰富连接器库:支持连接各种系统和服务,包括数据库、云服务、消息中间件等
  3. 复杂业务逻辑支持:可构建复杂的业务规则和条件逻辑
  4. 数据映射与转换:具备强大的数据处理能力,支持字段映射、数据类型转换等
  5. 错误处理机制:提供完善的异常处理和重试机制

应用场景

  1. 数据集成:整合分散在不同系统的数据
  2. 应用集成:连接不同的应用系统
  3. 业务流程自动化:自动化端到端业务流程
  4. API编排:组合多个API构建复杂服务

生命周期管理

集成流程有四种主要状态:

  • 草稿:流程部署前的状态
  • 启用:流程正在运行中,可以接收请求并处理
  • 停用:流程已经停止使用,不会处理任何请求
  • 禁用:流程卸载后的状态

三、数据服务 ​

数据服务是指将各种异构数据源和系统中的数据通过标准化接口进行封装、转换和发布的一种机制,使各种数据可以被统一访问和使用。在TUS平台中,数据服务具体表现为:

系统集成层面 将不同系统的数据(如数据库、SAP系统)通过统一接口规范化,使数据可被其他应用调用。

格式转换能力 将结构化数据(如数据库表)和半结构化数据(如EXCEL文件、EDIFACT报文)转换为标准化的服务接口,实现数据格式的互通。

协议适配功能 支持多种服务协议(如SOAP、REST),使不同技术架构的系统可通过这些通用协议获取数据。

业务语义增强 不仅是简单数据传递,还可以添加业务规则、数据校验、字段映射等处理逻辑,使原始数据更具业务价值。

服务化封装 将数据操作(查询、更新、删除等)包装为服务化接口,降低数据访问复杂度,提高数据使用效率。

通过数据服务化,企业可以将分散在各个系统中的数据资产转化为可复用、标准化的服务能力,进而支持业务创新和系统整合。

Q:SOAP数据连接与SOAP数据服务的区别是什么?

A:

SOAP数据连接:

偏基础设施层面,主要解决如何连接到SOAP服务端

定义了与外部SOAP服务的通信方式、认证方式和基本参数

包含服务地址(endpoint)、安全凭证、超时设置等连接属性

负责建立和维护底层通信通道,处理通信异常

是后续创建SOAP服务的必要基础

SOAP数据服务:

偏业务功能层面,关注做什么操作以及返回什么数据

基于已建立的连接,定义了具体的业务功能和数据处理逻辑

包含对SOAP操作(operation)的映射、输入输出参数定义、数据转换规则

实现了对原始SOAP服务的业务封装和功能增强

以标准格式向上层应用提供数据服务,隐藏底层通信细节

简而言之,连接解决"如何连"的问题,而服务解决"做什么"的问题。连接是服务的基础,服务是连接的业务价值体现。

四、API​

API(应用程序编程接口)是允许不同软件系统之间进行通信的标准化的接口,用于实现系统间的数据交换和功能调用。

核心特点

  1. 通信标准:API定义了如何正确请求和交换数据的方法,使不同的应用程序可以互相连接和交互。
  2. 状态管理:项目中的API有三种核心状态:
    • 启用状态(Enabled):显示为绿色标签,API处于正常运行状态,可以接收和处理请求。
    • 停用状态(Disabled):显示为黄色标签,API已部署但当前不接收新请求,配置和资源仍保留在系统中。
    • 草稿状态(Draft):显示为红色标签,API注册审批通过但尚未启动,或者已经卸载,处于可编辑状态。
  3. 类型多样性:项目支持多种类型的API:
    • HTTP API: 基于HTTP协议,使用标准的HTTP方法(GET、POST、PUT、DELETE等)进行资源操作的接口。
    • SOAP API:基于XML的消息协议API,使用HTTP传输,提供严格的消息格式规范。
    • gRPC: 基于HTTP/2协议的高性能RPC(远程过程调用)框架API,使用Protocol Buffers作为接口定义语言。
    • Dubbo: 阿里巴巴开源的一款高性能Java RPC框架API,专为微服务通信设计。
    • WebSocket API:基于WebSocket协议,适用于需要服务器推送数据的实时应用。
    • SOAP 简易代理:针对SOAP服务的快速代理封装,简化SOAP服务的接入和调用过程,无需复杂配置。
    • SAP 简易代理:专为SAP系统设计的API代理,简化与SAP系统的集成和数据交换过程。
    • 数据库 服务化:将数据库操作转换为API服务,使数据库功能可以通过标准API方式调用,实现数据库能力的服务化。
  4. 生命周期管理:API有完整的生命周期,包括:
    • 设计与开发阶段
    • 测试阶段
    • 注册与审批阶段
    • 发布阶段
    • 运行管理阶段(启用、停用)
    • 版本控制阶段
    • 监控与分析阶段
    • 禁用与下线(卸载)阶段
  5. 资源组织:API通过资源组进行分类和管理,形成层次化结构,便于组织和查找。
  6. 订阅机制:用户可以通过API检索发现所需API,然后申请订阅以获取使用权限。

API在系统中的重要性

  1. 系统集成:允许不同系统间的无缝交互
  2. 业务扩展:通过开放能力,让第三方开发者构建新应用和服务
  3. 内部效率:提高开发效率,实现功能重用
  4. 创新催化:促进新服务和产品的快速开发

API是实现系统间通信的核心组件,通过标准化的接口定义、完善的生命周期管理和灵活的状态控制,确保了系统间稳定、高效的数据交换和功能调用。

五、资源组​

资源组是一种逻辑分组方式,用于将相关的资源(如数据连接、集成流程、数据服务、API等)组织在一起进行统一管理。 资源组通常在左侧导航区域显示,用户通过点击资源组来筛选和查看可用资源。

资源组包含以下关键特征:

  1. 层级结构:资源组采用树形层级结构,支持多级分类,用于系统化地组织资源(数据连接、集成流程、API)
  2. 管理功能:支持新建、编辑、删除、移动、导入、导出等操作,便于资源的统一管理
  3. 权限控制:支持按资源组分配资源,用户可以被授权访问特定的资源组
  4. 使用价值:
    • 提高资源可发现性,快速定位资源
    • 实现资源的逻辑分组,便于批量管理
    • 支持细粒度的访问控制(虽然不推荐,但是一个资源组确实可以只包含1个API、集成流程或者数据连接)

六、项目​

在TUS中,项目对应服务提供方的的实际业务系统,归属于服务提供方的某个业务部门;

系统管理员创建项目,并授权用户使用;

初始状态,TUS提供一个公共项目;公共项目包含四个公共资源组:

  • 公共资源组-数据连接
  • 公共资源组-流程集成
  • 公共资源组-数据服务
  • 公共资源组-API集成

新建用户默认拥有公共项目的使用权;

在开发控制台中切换项目时,显示所选项目的资源。

七、机构​

机构是指组织架构的管理单元,具有以下特点:

  1. 对组织架构进行维护和管理

  2. 支持创建多级机构树形结构,可以无限层级,但建议控制在5层以内

  3. 机构主要用于两个目的:

    • 按照组织层级进行数据隔离(通过租户)
    • 确定资源的所有者(通过应用系统的所属机构名称)

机构在系统中扮演着重要角色,是实现多租户隔离、权限管理和资源归属的基础。通过合理规划机构层级结构,可以更好地组织和管理系统中的各类资源和用户。

八、角色​

角色是一组权限的集合。具体来说:

  1. 角色是权限的载体,通过定义不同的角色并为其分配相应的权限,来实现对用户权限的统一管理
  2. 用户通过被分配角色来获得相应的操作权限
  3. 系统中的权限必须通过角色才能赋予给用户,这种方式更易于管理和维护
  4. 当需要修改某类用户的权限时,只需要修改对应角色的权限即可

角色支持两种类型的权限:

  • 菜单权限:可以访问哪些菜单或者页面
  • 操作权限:可以使用页面的哪些操作按钮,比如:通过、退回、启动、停止等

角色有"启用"和"停用"两种状态:

  • 启用:角色正常可用
  • 停用:角色暂时无法使用,已分配该角色的用户将无法使用相应权限

角色权限矩阵

TUS内置了6个系统角色,可以简化用户的功能权限管理:

TUS角色权限矩阵图示

说明

角色权限矩阵只涉及功能权限,不涉及数据权限。功能权限通过角色定义"能做什么操作";数据权限通过用户限定"能操作哪些数据"。

实际操作如下:

  1. 创建角色,定义其功能权限
  2. 将此角色分配给特定用户
  3. 在分配角色的同时,设置该用户可以管理的具体数据范围。

这种"用户-角色-数据权限"的三维关联模式允许:

  • 同一角色的不同用户可以有不同的数据权限范围
  • 灵活调整用户的数据访问范围而不影响功能权限

九、用户​

用户是系统的使用者,可以是员工、管理员或其他需要使用系统的人员。

在系统管理中,用户管理是认证鉴权功能的重要组成部分,用于实现对系统使用者的创建、编辑、删除等基本操作。

用户有以下特征和属性:

  1. 用户可以关联角色、项目
  2. 用户状态可以是启用或禁用
  3. 用户可以标记是否涉密
  4. 用户可以标记是否为主管
  5. 用户安全级别:分为五级(公开、内部、秘密、机密、绝密)

用户是权限管理的基础单元,通过分配角色获得功能权限,通过分配项目获取数据权限。

十、API门户​

API门户(开发者门户),是一个统一的API管理平台,用于集中管理、发布、监控和治理企业的各类API接口。它为不同类型的应用系统提供标准化的API接入服务。

服务调用方的API生命周期管理

创建: 应用系统注册

认证: OAuth2身份验证

授权: Token生成与管理

监控: API使用状态跟踪

维护: API更新

十一、应用系统​

在API门户中,应用系统对应服务调用方的的实际业务系统,归属于服务调用方的某个业务部门。

API调用方通过应用系统订阅API。

应用系统包含以下关键特性:

  1. 基本特征:具有唯一标识符和名称,属于外部系统;
  2. 身份识别:通过注册,TUS平台能够识别和验证访问API的应用系统身份;
  3. 权限管理:可以控制应用系统对API的访问权限;
  4. 安全机制:配有认证信息(应用系统标识、密钥),可通过认证获取Access Token;
  5. 组织归属:隶属于某个外部机构;