1、多租户基础概念:什么是多租户(Multi-Tenancy)、租户与用户的区别、多租户在签名链路中的典型应用场景

1.1 什么是多租户(Multi-Tenancy)

多租户(Multi-Tenancy)是一种软件架构模式,指单个软件实例能够同时为多个独立的组织(租户)提供服务,同时确保每个租户的数据、配置、权限和性能彼此隔离。在云签名链路中,多租户意味着同一套签名服务集群可以承载不同企业客户(如银行、政务平台、电商)的电子签名请求,而每个企业只能访问自己的密钥、证书、模板和审计日志。

核心特征: 共享基础设施 + 逻辑隔离 + 按租户定制策略。

多租户与单租户(Single-Tenancy)的关键对比如下:

对比维度 单租户架构 多租户架构
实例数量 每个客户独立部署一套实例 所有客户共享一套实例
资源利用率 低,存在大量空闲资源 高,通过共享降低运维成本
隔离粒度 物理/虚拟机级隔离 逻辑/数据级隔离
升级维护 逐个客户升级,周期长 一次升级,所有租户生效
适用场景 高安全合规要求(如金融核心) SaaS 化签名平台、企业级签名中台
多租户 vs 单租户架构对比 单租户架构 租户 A 独立实例 租户 B 独立实例 租户 C 独立实例 每个租户独占一套服务 + 数据库 多租户架构 共享签名服务实例 统一部署 · 统一运维 · 统一升级 租户 A 租户 B 租户 C 逻辑隔离:数据隔离 + 权限隔离 + 密钥隔离

1.2 租户与用户的区别

在多租户签名链路中,租户(Tenant)和用户(User)是两个不同层级的实体,混淆二者会导致权限隔离设计出现严重漏洞。

维度 租户(Tenant) 用户(User)
定义 一个独立的组织、企业或部门 租户内部的具体操作人员
标识 租户 ID(Tenant ID / Org ID) 用户 ID(User ID / Account ID)
权限范围 跨租户隔离边界,决定可见的数据集 租户内的角色权限(管理员、操作员、审计员)
生命周期 长期稳定,随合同/入驻创建 可频繁变动,入职/离职/转岗
签名链路影响 决定密钥容器、证书链、签名策略 决定是否允许发起/审批/撤销签名
实践原则: 在签名链路中,先鉴租户,后鉴用户。所有 API 请求必须携带 Tenant ID,服务端先验证该租户是否有效、是否被禁用,再验证用户身份和权限。
租户与用户层级关系 多租户签名平台(共享服务层) Tenant ID 路由 · 租户级隔离 · 全局策略 租户 A Tenant ID: t_001 租户 B Tenant ID: t_002 租户 C Tenant ID: t_003 用户 A1 用户 A2 用户 B1 用户 B2 用户 C1 用户 C2 用户始终归属于某个租户,不能跨租户访问

1.3 多租户在签名链路中的典型应用场景

在电子签名全链路中,多租户架构主要解决以下三类核心场景的权限隔离问题:

  1. 企业级签名中台: 集团企业为下属多个子公司或事业部提供统一的签名能力,每个子公司作为独立租户,拥有独立的印章管理、审批流程和审计日志。
  2. SaaS 签名服务平台: 云服务商为不同行业客户(金融、医疗、政务、电商)提供签名 API,每个客户是一个租户,租户之间密钥隔离、证书隔离、调用配额隔离。
  3. 混合云签名网关: 企业内部部署签名网关,对接多个外部合作方(供应商、渠道商、监管机构),每个外部组织作为一个租户,通过租户 ID 路由到不同的签名策略和密钥存储区。
常见误区: 仅通过用户角色(RBAC)做隔离,而忽略租户级隔离。例如,用户 A 属于租户 X,如果系统只校验用户角色而不校验租户 ID,用户 A 可能通过篡改请求参数访问租户 Y 的签名密钥或证书,造成严重的数据泄露。

下表总结了三个典型场景的隔离要点:

场景 租户划分依据 隔离重点 签名链路影响
企业级签名中台 子公司 / 事业部 印章模板、审批流、审计日志 每个租户独立配置签名策略
SaaS 签名平台 外部客户组织 密钥容器、证书链、API 配额 租户级限流、租户级密钥轮换
混合云签名网关 外部合作方 / 监管机构 网络隔离、签名策略、合规审计 租户 ID 路由到不同签名集群
关键结论: 多租户是签名链路权限隔离的第一道防线。没有正确的租户划分,后续的用户权限、密钥管理、审计追溯都将失去根基。在架构设计阶段,必须将 Tenant ID 作为所有核心表、缓存键、日志标签的必选字段。