登录 / 注册

理解 AI 投资 / 研究收束

远程MCP多用户鉴权:令牌受众、下游委托与代理同意应怎样分开

一条2025年的开发者讨论提出,经MCP服务器转发每位用户的Bearer令牌。对读完整的2026-07-28授权规范与安全文档,可以分清入站令牌的受众、下游凭证和特定代理场景的同意控制。这条讨论证明有人提出了设计问题,并不是对当前产品的安全审计。

DisconfirmAI 编辑部 · 首次发布 · · 最近实质更新 ·

快速答案

对于采用规范所述HTTP授权机制的远程MCP服务,入站访问令牌必须面向该MCP服务器,客户端必须在授权和令牌请求中标明目标资源。下游API授权是另一条边界:收到用户的Bearer令牌,并不等于获准将它转发给另一服务。在安全指南描述的混淆代理场景中,还必须在第三方授权前,按用户检查获批的客户端ID。因此,实现多用户方案需要分别落实并检查这些控制,逐用户OAuth加上不存储凭证本身还不充分。MCP授权能力是可选的,STDIO另有凭证获取方式。

01

规范现在禁止的诱人捷径

2025年7月的讨论以一个开发者的实际问题开始:如何让多个用户认证到同一个远程MCP服务器。他们提出的方案很直接——在客户端构建OAuth,将Bearer令牌传给远程MCP服务器,然后让服务器本身在每次工具调用中传递该Bearer令牌。提问者计划使用LibreChat作为客户端(它处理每用户的OAuth令牌并自动在HTTP请求中传给服务器),服务器端不存储任何凭证,只是从HTTP调用中自动提取Bearer令牌并传入工具调用。

已提供的2026-07-28版安全文档,将令牌透传描述为:接收客户端令牌时不验证它是否为MCP服务器签发,随后把它传给下游API。问题落在缺失的受众检查:面向一个资源的凭证,被当作另一个资源的授权依据。核查该捷径因而有了明确落点——追踪令牌的预期接收方,以及每次使用前实际执行的验证。

授权文档的令牌处理要求进一步规定了面向MCP服务器签发令牌的边界。因此,应从验证和委托环节评价提议,而不是以服务器是否存储凭证作为判断依据。本分析采用2026-07-28版文本;2025年7月的答复已经将令牌透传称为反模式。

02

规范强制要求的三条凭证边界

第一条边界是入站访问令牌的预期接收方。在所述HTTP授权机制中,MCP服务器验证令牌确实面向该MCP资源,客户端则通过RFC 8707资源指示标明目标资源。具体如何验证,取决于令牌格式与授权配置。下文的代理同意控制范围更窄,针对指南中第三方静态客户端ID、MCP客户端动态注册和第三方同意Cookie组合场景。

第二条边界是第三方授权前的逐客户端同意机制。安全最佳实践页面要求MCP代理服务器必须维护按用户批准的client_id注册表,并在发起第三方授权流程之前检查该注册表。这防止了混淆代理攻击:当静态client_id与动态客户端注册和同意Cookie结合时,攻击者可以通过构造利用浏览器现有同意状态的恶意链接,在未经用户明确批准的情况下获取授权码。

第三条边界将MCP服务器访问与下游API授权分开。文档禁止接收或传递非为MCP服务器签发的令牌,并将未经验证的透传描述为反模式。检查实现时,应追踪两次判定:MCP服务器为什么接收入站凭证,以及哪项凭证或委托授权下游API调用。后端凭证也需要有明确的目标资源与授权路径。

客户端在授权与令牌请求中携带必需的resource参数,以标识目标MCP服务器;服务器端则验证令牌的预期目标。二者是同一路径不同位置的互补控制。有效的实现检查,应从请求追踪到令牌签发和验证,而不止于确认OAuth登录成功。

03

合规要求而捷径不需要的东西

在混淆代理缓解措施描述的代理场景中,指南要求按用户记录已批准的client_id,在发起第三方授权流程前检查,并安全保存同意决定。同意界面要求涵盖请求客户端、第三方权限范围、已注册的重定向URI、CSRF保护和防止被嵌入。实现需要在指定环节执行用户与客户端之间的批准关系,再据此评价具体存储架构。

第三,如果用Cookie跟踪同意决策,它们必须使用__Host-前缀(防止父域或路径设置Cookie),设置Secure、HttpOnly和SameSite=Lax属性,进行加密签名或使用服务器端会话,并绑定到特定client_id而非通用的“用户已同意”标记。第四,MCP代理服务器必须验证授权请求中的redirect_uri与已注册的URI精确匹配,使用精确字符串匹配而非模式匹配或通配符,并在redirect_uri未经重新注册而改变时拒绝请求。

指南中的OAuth state要求,涉及代理同意流程里state的生成、保存和校验,以及同意批准与状态跟踪的先后次序。检查时应将state处理与重定向URI验证、逐客户端同意放在一起。入站令牌验证另有职责:确认凭证为MCP服务器签发。分清这些责任,才能检查每一环实际如何工作。

凭证存储与授权决定存储解决不同问题。同意注册表记录获批客户端ID及用户关系,第三方秘密属于另一类信息。采用同意Cookie时,指南规定Cookie保护,并提供签名Cookie或服务器端会话等方式。因此,可以独立核查逐客户端同意记录及其保护,再检查API凭证存在哪里。

授权文档将授权能力列为可选,并针对HTTP传输描述这一机制;STDIO实现则应从环境取得凭证。混淆代理缓解措施适用于所述代理安排。这些范围决定检查项目:先确认传输方式与凭证方案,再对照相关控制评价实现。

04

论坛描述能够证明什么,哪些仍未验证

提问者计划采用的LibreChat客户端一侧已经收到逐用户OAuth令牌,并提出服务器端转发方案。这确定了客户端的起点;接下来要查的是MCP服务器的受众验证和下游API的授权路径。参与者另行描述了Apify的API密钥方式。对该方式,应先按API密钥设计检查凭证目标与用户绑定,再判断OAuth专用要求是否适用。

论坛描述的凭证方案:还需要核查哪些边界

图解与数据对照
凭证边界提问者计划的连接方式ApifyNapthaAI
预期受众(HTTP授权机制)已收到令牌,未描述受众验证自报API密钥方案,受众检查未验证声称使用OAuth,无代码证据
逐客户端同意(第三方授权前注册表)未描述逐客户端同意未记录OAuth同意流程无代码证据
禁止令牌转发计划直接转发,需核查独立的下游授权自报外部密钥转发,MCP鉴权边界未验证无代码证据
按三行分别索取各方案的证据:入站令牌受众验证、适用时的逐客户端代理同意,以及有明确依据的下游授权路径。各列整理讨论#1247中的描述,属于实现核查清单;OAuth控制应在文档规定范围内适用。

提问者随后链接一个OAuth示例,并称其修复了混淆代理问题。这项声称提供了一个可以继续检查的候选。具体应查看资源参数、入站令牌受众验证,以及该代理设计适用的客户端批准控制。本研究的材料是论坛描述,未检查实现代码。

2025年7月的被选中答复承认仍有疑问,同时已将令牌透传称为反模式。讨论后来依据仓库讨论政策关闭。这条时间线说明,该捷径当时已经进入安全讨论;本次比较的具体要求则取自注明日期的规范文本。

这里能够交付的是要求与证据的对应关系。论坛给出三种被描述的方式,当前文档给出相关边界。评价某个具体实现时,应补齐矩阵列出的请求、验证和同意证据。买方或开发者便可以用相同问题比较实际代码与配置,而不只根据OAuth标签作选择。

05

读者现在可以做出的决定

对于使用这一授权机制的远程HTTP MCP服务,验收应看清两条路径:入站令牌面向MCP服务器并由其验证,下游API授权另有明确依据。若服务采用指南描述的代理安排,再加上逐用户客户端批准及相关重定向、Cookie和state控制。这是文档支持更充分的设计依据,因为它把简单Bearer转发所掩盖的不同授权判定分别落实。

选择或上线实现前,应索取resource参数、受众验证判定、用户与下游授权的绑定,以及适用时的代理同意记录。这些是本研究提出的评估步骤,尚未实际执行测试。材料不能认证某个参考实现、确定产品当前存在漏洞,或量化运营成本差异。

更新记录
  • 初始发布,整合2026-07-28授权规范与安全最佳实践页面的规范要求,映射到2025年7月原始多用户认证问题。
来源与说明
  1. 远程MCP Bearer令牌认证最佳实践 #1247
    远程MCP Bearer令牌认证最佳实践 #1247 ↗

    原始多用户认证问题、提出的令牌透传架构、引用的实现(Apify、NapthaAI、OpenWebUI)、表达不确定性的被选答案、维护者程序性关闭

    原文章节 · Discussion thread, questions and answers by henrycashe26 and yannj-fr, Jul 2-Sep 25 2025-2026

    获取日期: 2026-10-19
  2. 安全最佳实践
    安全最佳实践 ↗

    令牌透传反模式定义、混淆代理攻击条件和缓解措施、六个MUST级基础设施组件、风险类别(绕过、审计追踪、信任边界、未来兼容性)

    原文章节 · Token Passthrough section, Confused Deputy Problem mitigation section, Required Protections subsections

    获取日期: 2026-10-19
  3. 授权
    授权 ↗

    按RFC 8707的MUST级受众验证、MUST NOT接受或转发其他令牌、客户端资源参数MUST、规范服务器URI定义、范围选择策略

    原文章节 · Token Handling section, Resource Parameter Implementation section

    获取日期: 2026-10-19

DisconfirmAI 编辑 · AI 协作研究。引用资料与计算口径列于上文。

沿着问题继续研究

相关专题

研究专题 →