---
title: OMS-MCP 授权与安全审计技术架构
description: 文本抽取：安全性能/OMS/OMS-MCP 授权与安全审计技术架构
updated: 2026-11-04
tags: [原始文档, 抽取, 安全性能]
source: 安全性能/OMS/OMS-MCP 授权与安全审计技术架构
source_type: txt
source_hash: 170e5bbc9713
extracted_at: 2026-11-04
quality: ok
---

（脱敏说明：沉淀自某国际奢侈集团客户 OMS-MCP 治理评审交付材料，原文即按产品通用视角撰写，转换时仅调整"客户/企业方"称谓为客户中性表述；客户与项目识别信息不出现在本文。）

Shopex OMS · MCP 授权 / 安全 / 审计日志 技术架构
产品技术白皮书
 Shopex OMS · MCP 授权 / 安全 / 审计日志 技术架构
 让 AI 安全地使用 OMS 业务能力 —— 基于 OAuth 2.1 标准授权、纵深防御安全体系、全链路可审计的 AI 接入架构
 版本 V1.12026 年 10 月适用：Shopex OMS 8.14+读者：客户技术决策者 / 集成方
 壹总体架构
 贰MCP 授权架构
 叁MCP 安全体系
 肆审计日志
 伍边界与演进
 一句话结论：业务能力向 AI 开放，控制权留在用户手中 —— 每一次 AI 调用都经过
 「账号 → 应用 → 令牌 → 权限 → 数据」五层校验；写操作必须双重确认（预览 → 确认 → 执行）；
 全链路可审计、可追溯、可吊销。
 3
种授权形态（4 类客户端）
 149
内置业务工具
 6→25
授权域 → 权限点
 30分/300秒
令牌效期 / 确认窗口
 23
项调用审计字段
 14+
类敏感字段自动脱敏
 标准化授权
公开型动态注册与操作员型机密客户端均走 OAuth 2.1 授权码 + PKCE（兼容 WorkBuddy、Claude 等）；Agent 型机密客户端凭密钥直换同构令牌，服务无人值守场景。
 细粒度权限
AI 继承账号当前角色权限并实时收敛：账号收权，AI 同步收权，无缓存、无权限漂移。
 写操作双确认
所有写操作先试算预览，经确认令牌二次提交方可执行；防重放、防篡改。
 全链路审计
谁、用哪个 AI、调哪个工具、改了什么、成功与否、耗时多少 —— 一条追溯号贯穿所有环节。
 壹总体架构
 四个组成部分、四种凭证通道、一张全景图
 整套架构由四部分组成：AI 接入端（四类客户端）、MCP 服务端（工具网关）、OMS 后端（授权服务器 + 业务能力 + 审计中心）、OMS 控制台（管理面）。
 MCP 服务端本身不触碰业务数据库 —— 所有业务请求最终都由 OMS 后端完成权限校验后执行，确保 AI 接入不产生任何"绕过权限"的旁路。
 Shopex OMS · MCP 安全接入总体架构
 AI 客户端经 MCP 协议访问 OMS 业务能力；授权、安全与审计由三端协同完成
 首次连接：用户在浏览器完成 OAuth 登录与授权同意（见时序图 ①）
 AI 接入端
 四类客户端 · 三种授权形态
 第三方 AI 连接器
 WorkBuddy · Claude 等
 浏览器 OAuth 授权登录
 通道：OAuth 2.1 Bearer
 操作员型机密客户端
 多人 AI 助手服务（B/S）
 每操作员浏览器授权一次
 通道：OAuth 2.1 Bearer
 Agent 型机密客户端
 后台自动化服务（无人值守）
 绑定服务账号 · 密钥直换令牌
 通道：客户端凭证换 OAuth 令牌
 MCP 服务端
 工具网关 · 资源服务器
 OAuth 验签
 令牌签名 · 声明校验
 会话管理
 身份绑定 · 防劫持
 工具注册表
 149 工具 · 严校验
 写入确认
 prepare / apply
 本地审计
 请求 · 会话 · 异常
 脱敏引擎
 敏感字段自动遮蔽
 Streamable HTTP · JSON-RPC 2.0 · stdio
 不直接触碰业务数据库
 业务能力一律经 OMS 后端校验
 OMS 后端
 授权服务器 + 业务能力 + 审计中心
 授权服务器（AS）
 授权页 · 令牌签发 · 公钥（JWKS）· PKCE
 客户端注册表
 凭证哈希存储 · 动态注册审批 · 机密客户端管理端注册
 角色权限模型（RBAC）
 实时角色解析 · 6 授权域 → 25 权限点
 MCP 业务端点
 订单 · 售后 · 库存 · 采购等业务能力
 Agent 审计中心
 23 项调用审计 · 脱敏 · 追溯号
 OMS 控制台
 （管理面）
 MCP 凭证管理
 应用注册审批
 MCP 调用日志查看
 用户 MCP 接入开关
 JWKS 公钥
 业务请求
 审计上下文头
 业务结果
 请求 / 数据流
 响应 / 管理流
 图 1-1 · MCP 安全接入总体架构
 1.1 组件职责与安全职责
 组件 | 定位 | 核心职责 | 安全职责 | 
 AI 接入端（四类客户端） | 接入方 | 发起工具调用、保管本地凭证 | OAuth 同意登录、一次性密钥安全保管 | 
 MCP 服务端 | 工具网关 · 资源服务器 | 协议适配、149 个工具注册、会话管理、写入确认 | 令牌验签、参数严校验、脱敏、本地审计 | 
 OMS 后端 | 授权服务器 + 业务系统 | 令牌签发、权限模型、业务执行 | PKCE、哈希存储、实时权限解析、Agent 审计 | 
 OMS 控制台 | 管理面 | 凭证管理、注册审批、日志查看 | CSRF 防护、管理员权限、敏感信息掩码显示 | 
 1.2 三种授权形态与四类客户端
 按「谁授权 · 凭证形态 · 令牌身份」划分为三种授权形态，覆盖四类客户端。三种形态签发的访问令牌结构完全一致（同一套验签、声明校验、权限解析与审计），仅授权来源与身份来源不同：
 授权形态 | 适用客户端 | 如何获得授权 | 令牌身份 | 安全特性 | 
 公开型
（动态注册） | 
 第三方 AI 连接器（WorkBuddy、Claude 等）、本地命令行工具 | 
 应用按标准协议自助注册（三模式治理：开放 / 需审批 / 关闭），每个用户在浏览器登录 OMS 账号并明示同意 | 
 各操作员本人 | 
 授权码 + PKCE；同意按「用户 × 应用」双维度管理；随时可吊销 | 
 操作员型机密
（管理端注册） | 
 多人 AI 助手服务（B/S 架构，有独立服务端） | 
 OMS 管理员在控制台注册应用、登记回调地址，密钥一次性交接；每个操作员仍需浏览器授权一次（应用密钥只用于换票时证明应用身份） | 
 各操作员本人 | 
 密钥哈希存储、可轮换可吊销；多操作员令牌 / 会话 / 权限完全隔离 | 
 Agent 型机密
（管理端注册） | 
 后台自动化服务（对账 / 同步 / 审单等无人值守场景） | 
 OMS 管理员注册时绑定一个服务账号并配置角色 —— 注册即授权；服务凭应用密钥直接换取令牌，无浏览器环节 | 
 绑定的服务账号
（禁登录控制台、不入操作员列表） | 
 密钥直换 30 分钟短效令牌、不发长期续期令牌；停用账号 / 吊销应用即时止损 | 
 内置助手 | 
 OMS 页面内嵌 AI 助手 | 
 随用户控制台会话自动签发，无需注册 | 
 当前控制台用户 | 
 短时 JWT、前端零明文凭证 | 
 ✦ 为什么形态不同、令牌却同构？三种形态最终都拿到同一结构的 30 分钟访问令牌（RS256 签名，携带身份 / 应用 / 授权域 / 版本声明），下游的验签、权限实时解析、写操作确认与审计对三种形态无差别 —— 权限始终只由账号角色决定，审计始终记录「身份 + 应用 + 工具 + 结果」。形态差异只体现在"授权从哪来"。
 贰MCP 授权架构
 五层校验模型 · 三种授权形态的连接建立 · 会话安全 · 凭证生命周期 · 写操作双重确认
 2.1 授权模型：五层校验
 每一次 AI 调用（不限于首次连接）都要完整通过以下五层校验，任何一层失败即拒绝并记录审计。
 授权五层校验模型 —— 每次请求逐层验证
 请求进入 → 账号 → 应用 → 协议 → 权限 → 数据，任何一层不通过立即拒绝
 请求进入
 每 次 请 求 逐 层 校 验
 业务数据
 校验失败
 ① 账号层
 用户身份与接入开关
 MCP 接入开关（管理员管控）
 停用账号自动阻断
 登出 / 改密即时失效
 拒绝 403
 ② 应用层
 MCP 应用凭证
 应用绑定所属账号
 注册管控（动态三模式 · 机密管理端注册）
 可随时吊销 / 轮换
 拒绝 401
 ③ 协议层
 令牌与会话
 OAuth 2.1 + PKCE
 RS256 验签 + 声明校验
 30 分钟效期 · 会话绑定
 拒绝 401
 ④ 权限层
 授权域与权限点
 6 授权域 → 25 权限点
 实时角色权限解析
 方法级权限校验
 拒绝 403
 ⑤ 数据层
 数据范围与保护
 角色数据范围隔离
 敏感参数脱敏
 后端统一业务校验
 拒绝 403
 核心原则：AI 客户端继承所属账号的当前角色与权限 —— 账号收权，AI 同步收权（实时解析、无缓存、无漂移）
 图 2-1 · 授权五层校验模型
 ✦ 为什么是"实时解析"？权限不在 AI 侧缓存：每次调用都到 OMS 后端按账号当前角色重新计算。
 管理员在控制台调整角色、停用账号或吊销凭证后，下一次 AI 调用立即生效，不存在权限延迟窗口。
 2.2 连接建立：三种授权形态的取数方式
 第三方连接器与操作员型机密客户端（如 WorkBuddy、客户 AI 助手服务）首次接入时，走标准 OAuth 2.1 授权码流程：用户在浏览器登录 OMS 账号并明示同意，客户端获得短时访问令牌。Agent 型机密客户端（后台无人值守服务）则凭应用密钥直换令牌，见 2.2.4。
 OAuth 2.1 授权登录时序图（连接器首次接入）
 AI 连接器
 WorkBuddy 等
 MCP 服务端
 资源服务器
 OMS 授权服务器
 授权服务器（AS）
 用户浏览器
 授权登录页
 阶段 ① 发现与质询
 阶段 ② 用户登录与同意
 阶段 ③ 令牌交换（PKCE）
 阶段 ④ 会话建立
 阶段 ⑤ 持续续期与吊销
 initialize（未携带凭证）
 401 + 资源元数据质询（RFC 9728）
 自动发现授权服务器端点
 打开授权页（应用 ID + PKCE 挑战值）
 加载授权登录页
 用户登录：口令密文（防重放）
 验证码 / 企业 SSO
 提交登录并同意（授权域清单）
 重定向回跳 + 一次性授权码
 回跳携带授权码
 令牌请求（授权码 + PKCE 校验值）
 校验客户端 · PKCE · 签发令牌
 access_token（RS256 · 30 分钟）+ refresh_token
 initialize（Authorization: Bearer）
 获取公钥集（JWKS）
 RS256 公钥（缓存 5 分钟 · 容忍轮换）
 验签 + 声明校验：
 受众 · 类型 · 用户 · 效期 · 令牌版本
 会话建立（会话 ID · 绑定应用 + 用户身份）
 续期（刷新令牌轮换）
 刷新令牌被重放 → 该用户会话全部吊销
 同身份新令牌继续会话
 会话延续（身份不变方可续用）
 请求
 响应 / 签发
 校验 / 动作
 图 2-2 · OAuth 2.1 授权登录时序（五个阶段）
 阶段 | 发生什么 | 安全设计 | 
 ① 发现与质询 | 未认证访问被拒绝，并按标准协议告知授权入口 | 杜绝伪造登录页；标准发现协议（RFC 9728） | 
 ② 用户登录与同意 | 用户在浏览器登录 OMS 账号，看到并同意申请的授权域 | 口令密文传输 + 防重放；兼容验证码 / 企业 SSO；授权范围事前告知 | 
 ③ 令牌交换 | 连接器用授权码换取访问令牌 | PKCE 防授权码截获；客户端身份校验；RS256 非对称签名 | 
 ④ 会话建立 | MCP 服务端验签令牌并建立会话 | 签名 + 多项声明校验；公钥轮换容忍；会话与身份绑定 | 
 ⑤ 持续续期 | 刷新令牌轮换续期；检测到重放立即吊销该用户全部会话 | 短效期缩小泄露窗口；重放检测自动升级处置 | 
 2.2.4 Agent 型机密客户端：密钥直换令牌（客户端凭证模式）
 后台自动化服务没有"人点同意"的环节 —— 授权在注册时由 OMS 管理员完成（绑定服务账号 + 配角色）。运行期服务凭应用密钥直接换取绑定服务账号身份的访问令牌：
 Agent 型：密钥直换令牌（无人值守 · 三步循环）
 授权已在注册时完成（绑定服务账号 + 配角色）· 运行期无浏览器环节 · 令牌到期前重换
 后台自动化服务
 对账 · 同步 · 审单 · 定时任务
 OMS 令牌端点
 凭密钥换令牌（客户端凭证模式）
 MCP 工具调用
 149 工具 · 五层校验照常
 ① 密钥换令牌
 服务持应用密钥（注册时一次性交接）请求令牌 → 端点校验密钥哈希 + 应用状态 + 绑定的服务账号（类型 / 状态 / 接入开关）
 ② 获得绑定服务账号的访问令牌
 30 分钟短效 · RS256 签名 · 身份 = 服务账号 · 与操作员型令牌结构完全一致（权限按服务账号角色实时解析 · 审计照常记录）· 不发长期续期令牌
 ③ 到期前自动重换
 令牌到期前（如提前 2 分钟）重新走 ①；密钥长期有效可配置过期时间与轮换 —— 轮换只换密钥不换应用标识，服务侧仅更新密钥配置
 即时止损：停用服务账号 / 吊销应用 / 轮换密钥 —— 任一动作完成后，下一次请求即被拒绝
 图 2-2b · Agent 型机密客户端的令牌获取与循环（客户端凭证模式）
 对比项 | 操作员型 / 公开型（浏览器授权） | Agent 型（密钥直换） | 
 授权发生时点 | 每个操作员首次使用时，浏览器登录 + 明示同意 | 管理员注册时绑定服务账号 + 配角色（注册即授权） | 
 令牌身份 | 各操作员本人 | 绑定的服务账号（非自然人） | 
 续期方式 | 长期续期令牌轮换（含重放检测） | 不发长期续期令牌，到期重走密钥换令牌 | 
 权限来源 | 操作员角色（实时收敛） | 服务账号角色（实时收敛 · 调整即时生效） | 
 审计定位 | 到人 + 应用 | 到服务账号 + 应用 | 
 止损动作 | 吊销应用 / 停用该操作员账号 | 吊销应用 / 停用服务账号 / 轮换密钥（三者任一即时生效） | 
 ✦ 服务账号的特殊约束：服务账号是专为后台服务创建的账号类型 —— 禁止登录控制台、不出现在操作员选择列表、不能作为授权人给应用点同意；可正常配置角色、开启 MCP 接入、被令牌绑定与审计。一个后台服务一个应用一份密钥（"一个程序一个客户端"），与面向操作员的助手应用分开注册、分开止损。
 2.3 会话安全机制
 会话（session）不是"登录一次、永久放行"。每个会话与身份强绑定，每次请求都重新核对归属：
 校验项 | 规则 | 防范的风险 | 
 会话归属 | 会话必须由同一应用 + 同一用户身份持有，不一致立即拒绝 | 会话劫持 / 跨用户复用 | 
 凭证类型一致 | 凭证类会话不接受令牌类凭证续用，反之亦然 | 通道混淆攻击 | 
 身份绑定 | 令牌中的用户身份必须与会话一致 | 越权提权 | 
 同身份续用 | 续期仅允许身份不变；换用户身份的令牌被拒 | 令牌被窃后顶替 | 
 会话终止 | 客户端断开或登出即清理会话与待确认状态 | 残留会话滥用 | 
 2.4 应用凭证生命周期管理
 MCP 应用凭证生命周期
 动态注册三模式：开放（自动激活）· 需审批（管理员审核）· 关闭（停止新注册）｜机密客户端由管理员在控制台注册（直接生效）
 凭证轮换：旧凭证立即失效，新凭证一次性交接
 已申请
 （待审批）
 生效中
 （可正常使用）
 失效
 （吊销 / 过期）
 申请
 审批通过
 开放模式自动激活
 吊销（所有者 / 管理员）
 到达过期时间
 审批拒绝（审批模式）
 个人凭证每账号至多一份 · 机密客户端按应用注册（操作员型 / Agent 型）· 密钥仅创建 / 轮换时展示一次 · 后端仅存哈希
 图 2-3 · 应用凭证生命周期状态机
 ✦ 凭证管理四原则：
 ① 一次性交接 —— 密钥仅在创建 / 轮换弹窗展示一次，关闭后不再渲染明文；
 ② 哈希存储 —— 后端只存单向哈希，数据库泄露 ≠ 凭证泄露；
 ③ 随时可控 —— 所有者可轮换 / 撤销，管理员可吊销任意应用、可按账号开关 MCP 接入；
 ④ 注册管控 —— 动态注册三模式（开放 / 需审批 / 关闭），未获批应用无法完成授权。
 2.2.5 如何授权：三种形态的授权示例
 以"客户同时有三种 AI 接入诉求"为例，看三种授权形态分别如何完成授权与首次调用：
 场景 | 授权动作（谁做什么） | 首次调用前客户侧持有 | 典型校验链 | 
 公开型
客服主管想在 WorkBuddy 里查订单 | 
 ① WorkBuddy 按标准协议自助注册应用（OMS 治理模式下开放 / 需审批）
② 主管在 WorkBuddy 点连接 → 浏览器登录 OMS 账号 → 看到授权域清单并点同意 → 回跳完成 | 
 无需保管任何长期密钥；令牌由连接器按协议自动管理 | 
 发现质询 → 登录同意 → PKCE 换票 → 验签建会话 | 
 操作员型机密
客户自建 B/S 架构 AI 助手，30 名操作员使用 | 
 ① 管理员在控制台注册应用（登记回调地址与授权域）→ 密钥一次性交接给客户集成方存入密钥管理服务
② 每名操作员首次使用时浏览器登录 OMS 并各点一次同意（30 人各一次，互不影响） | 
 应用标识 + 应用密钥（服务端保管，不进前端 / 代码） | 
 密钥换票（授权码 + PKCE + 密钥双因子）→ 每操作员独立令牌 / 会话 | 
 Agent 型机密
客户后台每晚自动对账服务 | 
 ① 管理员创建（或注册时顺带创建）服务账号并配角色（如只读 + 对账所需域）
② 管理员注册 Agent 型应用并绑定该服务账号 → 注册即授权，密钥一次性交接
③ 服务侧配置密钥，启动即可调用 —— 全程无浏览器、无人工同意 | 
 应用标识 + 应用密钥（仅后台 worker 进程持有） | 
 密钥直换令牌 → 服务账号校验 → 验签建会话（权限 = 服务账号角色实时解析） | 
 ✦ 选型口诀：给人用的 AI（连接器 / 助手服务）→ 走浏览器授权，令牌身份 = 操作员本人；给机器用的 AI（后台服务）→ 走密钥直换，令牌身份 = 服务账号。一个程序一个应用：助手与后台服务即使同属一个客户，也分开注册、分开配权限、分开止损。
 2.5 工具调用与写操作双重确认时序
 读操作直接执行（仍需通过全部校验）；写操作必须经过「试算预览 → 确认 → 执行」三步，AI 无法单方面改动业务数据。
 工具调用时序图（读操作 + 写操作双重确认 + 异常防护）
 AI 客户端
 携带会话 ID 与令牌
 MCP 服务端
 校验 · 确认 · 审计
 OMS 后端
 权限 · 业务 · 审计
 阶段 ① 读类工具调用（以订单查询为例）
 阶段 ② 写操作双重确认（以创建账号为例）
 阶段 ③ 异常防护
 tools/call · 订单查询（携带会话 ID）
 会话归属校验（身份匹配 · 拒劫持）
 业务请求（Bearer 下游 + 审计上下文头）
 令牌校验 → 实时角色解析
 权限点 + 数据范围校验
 业务数据
 写 Agent 审计（追溯 · 工具 · 脱敏参数 · 耗时）
 tools/call · 创建账号（写 · 未带确认令牌）
 prepare 预览请求（试算校验）
 预览结果（变更清单）
 需确认 + 变更预览 + 一次性确认令牌
 用户 / 智能体审阅变更内容
 再次 apply（携带确认令牌）
 确认令牌核验：
 · 300 秒效期 · 一次性使用
 · 绑定身份 + 会话 + 操作对象
 · 载荷哈希 · 状态指纹
 正式执行写入
 写入审计（写标记 + 业务键 + 结果）
 执行结果
 结果 + 审计回执（含审计编号）
 重放 / 过期的确认令牌
 拒绝执行（重放 / 过期 / 不匹配）
 请求
 响应
 确认流
 异常拒绝
 图 2-4 · 工具调用全时序（含写操作双重确认与异常防护）
 ✦ 写操作五重防线：
 ① 未带确认令牌的写请求只返回试算预览，不执行；
 ② 确认令牌300 秒过期、一次性消费，重放立即拒绝；
 ③ 令牌绑定身份 + 会话 + 操作对象，A 的令牌不能用于 B 的操作；
 ④ 载荷哈希防篡改 —— 确认后偷偷改参数无效；
 ⑤ 状态指纹乐观锁 —— 执行前对象若已被他人改动，拒绝并提示重新确认。
 叁MCP 安全体系
 纵深防御八层 · 令牌与密钥 · 身份与登录 · 数据与输入 · 能力清单
 3.1 纵深防御架构
 安全不依赖单点，而是层层设防：攻击流量必须同时突破以下所有层，才能触达业务数据。
 安全纵深防御架构 —— 八层设防
 从传输到审计，请求必须通过全部防线才能触达业务数据
 外部请求
 纵 深 防 御
 业务数据
 1 传输与入口
 加密 · 统一入口
 HTTPS 加密传输
 统一路由入口
 请求体大小限制
 响应与超时控制
 2 身份认证
 谁在连接
 OAuth 2.1 + PKCE
 RS256 验签
 凭证仅哈希存储
 口令密文 · 防重放
 3 会话安全
 谁在操作
 会话身份绑定
 劫持拒绝
 同身份续用
 登出即失效
 4 权限管控
 能做什么
 账号接入开关
 应用注册审批
 授权域→权限点
 实时角色解析
 5 输入与数据
 能传入什么
 严格参数校验
 大小 · 时间边界
 地址校验（SSRF）
 密钥零明文
 6 写操作防护
 变更必确认
 双重确认机制
 一次性确认令牌
 防重放 · 防篡改
 状态指纹锁
 7 吊销与响应
 异常及时止
 全局令牌吊销
 刷新轮换·重放检测
 CSRF 双提交
 登录防重放
 8 审计与脱敏
 事事可追溯
 全链路调用审计
 敏感字段脱敏
 响应摘要存档
 控制台日志查看
 任何一层不通过即拒绝请求，并生成对应审计记录
 图 3-1 · 纵深防御八层架构
 3.2 令牌与密钥安全
 机制 | 设计 | 客户价值 | 
 非对称签名（RS256） | 私钥仅存于授权服务器，验签方只持有公钥 | 私钥不外发，伪造令牌不可行 | 
 公钥轮换（JWKS） | 公钥集"在用 / 退役"双态管理，轮换带验签宽限期 | 密钥定期轮换零停机 | 
 短效期令牌 | 访问令牌 30 分钟有效，到期经刷新令牌轮换续期 | 即便泄露，可滥用窗口极小 | 
 全局即时吊销 | 登出 / 改密提升用户"令牌版本"，旧令牌立即失效 | 安全事件快速止损 | 
 刷新令牌防重放 | 一次性轮换；检测到已用令牌被重放，自动吊销该用户全部会话 | 持久凭证被盗自动失效 | 
 多声明校验 | 受众、类型、签发者、用户、效期、令牌版本逐项核验 | 跨系统 / 过期 / 被吊销令牌全部拒之门外 | 
 3.3 身份与登录安全
 机制 | 设计 | 
 口令密文传输 | 登录口令密文化提交，配合时间戳与一次性随机数（nonce）防重放，网络侧无明文口令 | 
 CSRF 双提交防护 | 控制台管理操作（审批、吊销等）强制 CSRF 校验，令牌滚动轮换 | 
 同账号互踢 | 可配置的登录互斥策略，降低账号共享风险 | 
 浏览器令牌隔离 | 控制台登录态存放于 HttpOnly Cookie，脚本不可读取；AI 通道令牌独立体系 | 
 3.4 数据与输入安全
 机制 | 设计 | 
 严格参数校验 | 全部 149 个工具的参数按强类型模式校验，多余字段直接拒绝；分页上限、时间格式、文件名白名单逐项约束 | 
 资源边界 | 请求体 ≤ 10MB、下游响应 ≤ 1MB、调用超时 30 秒，防资源耗尽 | 
 地址防注入 | 目标地址强制校验（协议、无内嵌凭据、无杂项参数），防 SSRF 与注入 | 
 密钥零明文 | 密钥不出现在 URL、请求体、日志与错误信息中；错误消息中的密钥形态自动替换为遮蔽占位 | 
 敏感字段脱敏 | 密码、令牌、密钥、会话等 14 类以上敏感字段在日志中递归脱敏；超长值截断 | 
 无直连数据库 | MCP 服务端不持有数据库访问权限，全部业务经 OMS 后端执行，天然消除注入面 | 
 3.5 安全能力清单（速查）
 能力 | 实现 | 客户价值 | 
 标准授权协议 | OAuth 2.1 授权码 + PKCE，RS256 签名令牌 | 兼容主流 AI 连接器，无私有协议锁定 | 
 短效期令牌 | 访问令牌 30 分钟，可轮换续期 | 泄露影响窗口小 | 
 全局吊销 | 登出 / 改密即时失效全部旧令牌 | 事件快速止损 | 
 刷新防重放 | 轮换 + 重放检测自动升级处置 | 被盗凭证自动中和 | 
 公钥轮换 | JWKS 在用 / 退役双态 + 验签宽限 | 密钥轮换零停机 | 
 凭证哈希存储 | 密钥仅存单向哈希 | 库泄露 ≠ 凭证泄露 | 
 一次性交接 | 明文仅创建 / 轮换时展示一次 | 无长期明文暴露面 | 
 写操作双确认 | 试算预览 → 确认令牌 → 执行（300 秒一次性） | AI 无法静默改数据 | 
 输入严校验 | 强类型模式校验、拒绝多余字段 | 注入与畸形参数防御 | 
 资源边界 | 10MB / 1MB / 30 秒 | 防资源耗尽 | 
 敏感脱敏 | 14+ 类敏感字段递归脱敏 | 审计不产生二次泄露 | 
 登录安全 | 口令密文 + 防重放 + CSRF 双提交 | 账号安全基线 | 
 肆审计日志
 三层审计架构 · 23 项审计字段 · 全链路追溯 · 控制台查看
 4.1 三层审计架构与全链路追溯
 审计不只记"谁调用了"，而是三层分工、一条追溯号贯穿：管理面管凭证操作、接入面管请求与会话、业务面管每一次工具调用的完整明细。
 三层审计架构与全链路追溯
 接入面审计 · 业务面审计 · 管理面审计 —— 一条追溯号贯穿所有环节
 AI 客户端
 （请求发起）
 携带会话 ID
 智能体名称 · 版本
 模型 · 工具意图
 MCP 服务端
 （接入面审计）
 每一次 HTTP 请求
 会话建立 · 终止
 异常与错误
 仅元数据 · 不含凭证
 OMS 后端
 （业务面审计）
 工具 · 动作 · 读 / 写
 成功 · 错误码 · 耗时
 参数（已脱敏）
 响应摘要
 审计中心 · 控制台
 （管理与查看）
 审计数据持久化
 控制台调用日志页
 筛选 · 展开详情
 1
 2
 3
 ① 会话 ID 与追溯号　② 完整审计上下文：追溯号 · 工具名 · 智能体名称与版本 · 模型 · 确认标记　③ 持久化与控制台查看
 所有参数入库前脱敏：密码、令牌、密钥等敏感字段自动替换为 [已遮蔽]
 全链路追溯 —— 一次调用的追溯号流转
 AI 发起
 生成追溯号
 MCP 服务端受理
 本地审计 · 会话关联
 OMS 后端
 明细审计 · 持久化
 控制台
 按号检索 · 全链路还原
 追责 / 定界
 定位到人 · 到工具
 审计闭环：任何一次 AI 对业务数据的访问或变更，都能回答「谁 → 用哪个应用 → 通过哪个智能体 → 调用哪个工具 → 改了什么 → 何时成功与否」
 管理面审计（凭证操作留痕）
 创建凭证
 轮换凭证
 撤销凭证
 注册审批
 接入开关调整
 吊销应用
 图 4-1 · 三层审计架构与全链路追溯
 4.2 审计字段全景（23 项）
 业务面审计（Agent 调用日志）为每一次工具调用记录以下字段，覆盖「身份链、动作链、结果链、环境链」四个维度：
 维度 | 字段 | 说明 | 
 身份链 | request_id / trace_id | 请求号 / 追溯号（贯穿接入面与业务面） | 
 session_id | MCP 会话号（还原一次连接内的操作序列） | 
 user_id + client_id | 操作员与其绑定的 MCP 应用 | 
 agent_name / agent_version / model | 智能体名称、版本与所用模型（区分是哪个 AI 干的） | 
 动作链 | tool_name | 调用的工具（如订单查询、创建账号） | 
 action_type | 动作分类：查询 / 创建 / 更新 / 删除 | 
 write_flag | 读 / 写标记（写操作单独可筛） | 
 params | 调用参数（入库前已脱敏） | 
 biz_keys | 业务键（订单号、单据号等，便于按业务对象检索） | 
 结果链 | success / error_code | 成功与否与错误码 | 
 http_status | 业务接口状态码 | 
 response_digest | 响应摘要（不落全量数据，防日志膨胀与二次泄露） | 
 spendtime_ms | 耗时（毫秒） | 
 环境链 | client_mode | 凭证通道（OAuth / 内嵌 / 凭证） | 
 ip | 来源 IP | 
 created_at | 发生时间 | 
 tenant_id | 租户标识（多租户隔离） | 
 id | 审计记录号 | 
 ✦ 审计三不原则：
 ① 不落全量 —— 参数与响应入库前脱敏、超长截断，审计本身不成为敏感数据副本；
 ② 不留空白 —— 认证失败、权限拒绝、异常同样留痕，攻击尝试可见；
 ③ 不可抵赖 —— 身份链四字段（人 / 应用 / 智能体 / 模型）完整记录，责任可定位到个体。
 4.3 三层审计事件对照
 审计层 | 记录位置 | 覆盖事件 | 典型用途 | 
 接入面（MCP 服务端） | 网关审计文件 | 每次 HTTP 请求、会话建立、异常错误、认证失败 | 排查连接问题、发现异常流量 | 
 业务面（OMS 后端） | Agent 调用日志（数据库） | 每次工具调用全明细（23 项字段） | 业务追溯、责任定界、用量统计 | 
 管理面（控制台操作） | 管理员操作日志 | 凭证创建 / 轮换 / 撤销、注册审批、开关调整 | 管理动作留痕、合规审查 | 
 4.4 控制台：MCP 调用日志页
 所有审计数据通过 OMS 控制台「MCP 调用日志」页面可视化查看，无需查库：
 能力 | 说明 | 
 列表检索 | 分页浏览，支持筛选（应用、智能体、工具、动作类型、读 / 写、成功 / 失败、时间）与排序 | 
 行展开详情 | 请求号、追溯号、应用、通道、智能体（名 + 版本）、模型、操作员、时间、工具、动作、状态、耗时、来源 IP 一屏呈现 | 
 参数与响应 | 请求参数（已脱敏）与响应摘要格式化展示 | 
 个性化列配置 | 可自定义显示列并保存，适配不同角色关注点 | 
 权限受控 | 日志查看本身受权限点控制，非授权角色不可见 | 
 伍边界说明与演进路线
 当前边界 · 部署要点 · 安全基线对照 · 演进路线图
 5.1 当前边界（如实告知）
 以下为当前版本的实际能力边界，供技术评估时参考：
 边界项 | 现状 | 影响与建议 | 
 写入确认令牌为进程内存态 | 服务重启后待确认操作需重新发起 prepare | 影响极小（确认窗口仅 300 秒）；多实例部署时建议后续引入共享存储 | 
 网关层暂无独立限流 | 当前依赖后端资源边界（请求体 / 响应 / 超时）兜底 | 建议生产环境在接入层（负载均衡 / 网关）配置 IP 或应用级限流 | 
 审计存储建议 | 调用日志随业务库存储 | 高合规场景建议配置日志归档 / 外部投递策略 | 
 授权域为只读映射 | 授权域（scope）决定可申请范围，最终权限仍按账号角色实时计算 | 这是有意设计：避免双权限体系漂移；如需独立 AI 角色可用 OMS 角色体系配置 | 
 5.2 部署架构建议
 推荐部署拓扑
 HTTPS 统一入口 · 网关限流兜底 · 容器化部署 · 健康检查
 AI 客户端
 连接器 / CLI / 助手
 （HTTPS 出站）
 接入层
 负载均衡 / WAF
 TLS 终止
 IP / 应用级限流
 MCP 服务端
 容器化（可水平扩容）
 无状态优先
 健康检查端点
 OMS 后端
 授权服务器 + 业务
 权限实时解析
 审计持久化
 数据层
 业务数据库
 审计日志（库内）
 运维要点
 · 密钥与配置经环境变量 / 密钥管理服务注入
 · 授权服务器签名私钥独立保管、定期轮换
 · 公钥集支持在线轮换（宽限期机制）
 · 健康检查就绪探针，滚动升级零中断
 · 升级不中断会话（同身份令牌续用机制）
 多实例部署注意
 · 写入确认令牌当前为实例内存态：多实例时确认流
 　 需粘性路由（同一会话固定到同一实例）
 · 审计与日志集中采集（多实例文件分散）
 · 后续版本将提供共享确认存储消除该限制
 图 5-1 · 推荐部署拓扑与运维要点
 5.3 安全基线对照
 基线项 | 要求 | 本架构 | 
 传输加密 | 全程 HTTPS/TLS | 满足 | 
 身份认证 | 标准协议、无默认弱口令 | 满足（OAuth 2.1 + PKCE） | 
 权限最小化 | 按角色实时收敛 | 满足（继承账号角色，实时解析） | 
 令牌效期管理 | 短效期 + 可吊销 | 满足（30 分钟 + 即时吊销） | 
 操作审计 | 全操作留痕、可追溯 | 满足（三层审计 + 23 字段） | 
 敏感数据保护 | 存储与日志脱敏 | 满足（哈希存储 + 递归脱敏） | 
 防重放 | 关键操作防重放 | 满足（确认令牌一次性 + 登录防重放） | 
 网关限流 | 异常流量控制 | 建议补充（由接入层承担） | 
 密钥轮换 | 定期轮换机制 | 满足（JWKS 在用/退役双态） | 
 5.4 演进路线图
 演进路线图
 当前版本
 OAuth 2.1 授权
 五层校验 · 三层审计
 写操作双重确认
 近期增强
 共享确认存储
 （多实例无粘性路由）
 网关内置限流
 中期规划
 AI 专用最小权限角色
 审计日志外部投递
 （SIEM 对接）
 远期愿景
 用量配额与成本管控
 异常行为智能检测
 行业合规模板
 演进原则
 标准优先（OAuth 2.1 / MCP 协议演进同步） · 权限只紧不松 · 审计覆盖只增不减
 每一项演进都保持对既有客户端的向下兼容，客户升级零改造
 图 5-2 · 演进路线图
 5.5 术语表
 MCPModel Context Protocol —— AI 应用与业务系统之间的开放标准协议
 OAuth 2.1开放授权标准，本方案采用授权码 + PKCE 流程
 PKCE授权码交换证明密钥，防授权码截获攻击
 JWT / RS256JSON 令牌 / 非对称签名算法（私钥签发、公钥验签）
 JWKSJSON 公钥集，支持在线轮换
 授权域（scope）应用可申请的权限范围，映射到系统权限点
 确认令牌写操作二次提交的一次性凭证（300 秒有效）
 追溯号（trace_id）贯穿全链路的调用标识
 资源服务器接受 Bearer 令牌验签的服务（MCP 服务端角色）
 Shopex OMS · MCP 授权 / 安全 / 审计日志 技术架构 · V1.1 · 2026 年 10 月 · 本文档面向客户技术评审使用
