Claude Code OAuth 回归:审计自定义 API Gateway 凭证路由
Claude Code OAuth 回归可能把 Anthropic 用户 token 发往自定义 API Gateway。用这份 operator 清单在 5 月 28 日补丁后审计 token 隔离、gateway 认证日志与子 Agent MCP 策略执行。
归档条目:由 AI 根据所引信源辅助生成,发布时未经逐篇审阅。责任编辑:Joe Werner。

这次事件的运营核心问题只有一个,但足够紧迫:你的 API Gateway 收到的,是你预期它应该收到的凭证,还是有可能在某次回归中收到了用户的原始认证 token?
Anthropic 在北京时间 2026 年 5 月 28 日发布的 Claude Code 更新 修复了一个与自定义 API Gateway 直接相关的安全回归——包括所有兼容 OpenAI 的路由代理。该 bug 会导致客户端将用户本人的 Anthropic OAuth 凭证转发到自定义 Gateway 端点,而非使用 Gateway 自身配置的 API Key 或 bearer token。同一版本还修复了子 agent MCP 服务器的策略绕过路径。
发生了什么
这次回归影响所有通过自定义 API Gateway(通过 ANTHROPIC_BASE_URL 或等效 Gateway 配置)路由的 Claude Code 会话。在受影响的版本中,客户端会将用户自己的 Anthropic OAuth token——与其 Anthropic 账号绑定的凭证——发送到自定义 Gateway 端点,而非使用 Gateway 配置的认证材料。
该问题属于回归性 bug:早期版本不存在此问题,后续某次变更重新引入。此次补丁还原了错误的凭证转发路径,恢复了预期行为:自定义 Gateway 接收的是 Gateway 自己配置的认证信息,而非运营方或用户的 Anthropic OAuth 会话凭证。
同一版本中,与多 agent 部署相关的另外两个修复同样值得关注:
子 agent MCP 策略绕过已关闭。 通过 Agent tool 启动的子 agent 此前忽略了 --strict-mcp-config 标志、--bare 模式、远程模式限制、企业 managed-settings.json 中的 MCP 配置,以及运营方定义的 MCP server 允许/拒绝策略。实际效果是:以子 agent 身份调用的 agent 可以访问运营方明确禁止或未批准的 MCP server。此次补丁对子 agent 进程强制执行这些限制,使其与父会话的策略保持一致。
--strict-mcp-config 不再移除已批准的内联 server。 配套修复确保 --strict-mcp-config 不会从通过 --agents 标志或 SDK agents 明确传入的 agent 定义中删除内联 mcpServers。此前过于激进的限制在阻断策略绕过的同时也误伤了合法配置。
本次发布的其他变更包括:/model 现在将所选模型保存为新会话的默认值;macOS 后台 agent 在升级后保留隐私与安全权限授权;修复了有状态 MCP SSE 重连循环的回归;改进了 Windows 更新回滚路径。
对 AI 工程团队意味着什么
凭证回归是信任边界的违反,而非传统意义上的数据泄露。 没有外部攻击者获取任何内容——凭证被发送到用户或运营方自己控制的端点(自定义 Gateway)。但这种信任边界的破坏仍有明确的影响:
-
Gateway 层 token 计量失效。 如果 Gateway 收到的是 Anthropic OAuth token 而非自己配置的 API Key,请求的归因可能被悄无声息地破坏。许多 Gateway 基于传入的 bearer token 进行计费归因;收到错误的凭证类型会导致团队或项目级别的用量统计悄然出错。
-
Gateway 层访问控制被绕过。 路由代理通常基于传入 token 的身份来执行限速、预算上限、允许模型列表和日志策略。如果收到预期外的 OAuth 凭证,所有基于 token 身份的策略将静默失效。
-
凭证生命周期风险。 Anthropic OAuth token 的有效期窗口和吊销路径与 API Key 不同。如果错误的凭证类型在传输中经过 Gateway,就会出现在 Gateway 日志中——这是一个不同于预期的暴露面。
子 agent MCP 绕过是企业治理层面的缺口。 使用 Claude Code 多 agent 能力(Agent tool、claude agents)编排并行编码会话的团队受影响最大。配置了 managed-settings.json 以限制子 agent 可访问 MCP server 的运营方,此前并未真正获得这一限制的保护。对于网络 MCP server 访问属于合规边界的企业部署,这是一个直接的安全缺口。
Router/Operator 视角
凭证隔离是客户端与 Gateway 的共同责任。 这次回归将一个容易通过明确设计规避的风险变得具体可见。
客户端侧:Claude Code 通过 ANTHROPIC_BASE_URL 将请求重定向到自定义端点。当此环境变量被设置时,预期行为是客户端使用 Gateway 的认证材料,而非用户的 Anthropic 账号凭证。此次回归破坏了这一契约。升级到本次发布后,契约得到恢复。
Gateway 侧:设计良好的 API Gateway 应拒绝其不认识的 token。如果你的 Gateway 颁发自己的 API Key,而收到了一个与任何已知 Key 都不匹配的 bearer token,应立即返回 401。这是一种深度防御属性,能让凭证回归以认证失败的形式暴露出来,而非静默地进行凭证替换。如果你尚未审计 Gateway 接受和拒绝哪些 token 格式,现在正是时候。
Gateway 运营方行动清单:
- 在继续多用户或多租户 Gateway 部署前,将所有 Claude Code 安装更新到 5 月 28 日的版本。
- 审计 Gateway 访问日志,查看是否有会话使用了与你颁发的 API Key 在格式或长度上明显不同的 token 进行认证。OAuth token 与 API Key 的结构有明显区别。
- 确认在所有通过 Gateway 路由的客户端配置中,
ANTHROPIC_BASE_URL指向 Gateway 地址,ANTHROPIC_API_KEY设置的是 Gateway 颁发的 Key,而非用户的 Anthropic Key。 - 对于子 agent 部署:通过运行测试子 agent 调用并确认其无法访问被屏蔽的 MCP server,验证你的
managed-settings.jsonMCP 策略现在已端到端执行。 - 审查 Gateway token 验证逻辑:如果你的 Gateway 接受任何格式合法的 bearer token,而非针对已知 Key 存储进行验证,请收紧这一逻辑。Token 类型验证是一种低成本、高效的回归检测机制。
MCP 策略执行缺口需要架构层面的复盘。 如果你的 Claude Code 部署使用了带 MCP server 的多 agent 编排,此前的行为在你配置的策略与子 agent 实际执行之间存在缺口。对于此次补丁之前的子 agent 会话中发生的 MCP server 访问,应视为可能未经审计——通过审查会话日志,将 managed-settings.json 中的允许策略与子 agent 实际连接的 server 进行比对。
TheRouter 用户应该关注或尝试什么
将 Claude Code 路由到 TheRouter 或任何兼容 OpenAI 的 API Gateway 的团队,应按以下两步操作:
-
确保所有 Claude Code 客户端升级到 5 月 28 日发布的版本(v2.1.150 或更高)。凭证回归只影响通过自定义 Gateway 路由的会话,这正是使用路由代理时的典型配置。
-
验证 token 配置的明确性。 Claude Code 应将 Gateway 颁发的 Key 配置为
ANTHROPIC_API_KEY,将 Gateway URL 配置为ANTHROPIC_BASE_URL。如果你在团队级别管理 Claude Code 部署,请确认这些环境变量在 CI、容器环境和开发者.env文件中均已正确设置。
TheRouter 基于收到的 API Key 进行每请求归因和计费。如果受影响的会话向 Gateway 发送了 Anthropic OAuth token,这些请求可能已被拒绝(理想情况)或以异常身份被记录。审查补丁日期之前的 Gateway 请求日志中的异常认证事件,是最直接的审计路径。
子 agent MCP 策略执行修复与使用 Claude Code 后台 agent 能力(claude --bg、claude agents、Agent tool)的团队相关。升级后,在恢复生产工作负载前,测试你的 MCP 允许/拒绝策略是否对父会话和子 agent 会话均一致执行。
相关阅读
AI 路由新闻与供应商动态 →
Claude Code 2.1.269:一个 60 项修复包里藏着的三个 operator 级变更
Claude Code 2.1.269 新增了 gateway 发现超时覆盖参数、并发 workflow agent 上限,以及一个跨配置源默默生效的 deny rule 漏洞修复。这三项变更直接影响规模化运营 Claude Code 的团队。

Claude Code 2.1.222 修复了静默 Gateway Stream 断连与后台任务 Hook 绕过问题
Claude Code 2.1.222 中的三项修复直接影响使用自定义 ANTHROPIC_BASE_URL gateway 的运营团队:stream 空闲超时现在能正确响应任意 endpoint 的 keepalive,后台任务中的 PreToolUse hook 绕过已关闭,worktree git 命令作用域也得到加固。

Claude Code 2.1.275 让每个网关代理都返回 400。2.1.276 当天就修好了。
2.1.275 引入的一个内部请求 tag 导致所有通过 ANTHROPIC_BASE_URL 代理的调用全部返回 400。2.1.276 数小时后作为定向 hotfix 发布。本文拆解这次故障的机制、受影响配置,以及 2.1.275 中值得审查的三处次要 operator 变更。