AWS AgentCore Gateway 为 MCP 服务器配置 OAuth 授权码流程,保障 AI 助手安全访问
本文介绍如何使用 Amazon Bedrock AgentCore Gateway 为 MCP 服务器配置 OAuth 授权码流程,实现 AI 助手(如 Kiro IDE)请求的认证与授权。涵盖 IdP 配置、Gateway 设置、客户端集成等步骤,适合企业级安全部署。
一句话看懂
AWS 发布教程,展示如何通过 AgentCore Gateway 为 MCP 服务器配置 OAuth 授权码流程,让每个 AI 助手请求都携带用户身份令牌。
详细发生了什么
Amazon Bedrock AgentCore Gateway 是 AWS 提供的托管服务,用于集中路由和保护 AI 代理与工具之间的通信。当 AI 助手(如 Kiro IDE)通过 Gateway 向 MCP 服务器发送请求时,Gateway 会验证请求是否携带有效的身份令牌,只有授权用户才能访问后端工具。
该方案采用 OAuth 授权码流程(Authorization Code Flow with PKCE),核心组件包括:身份提供商(IdP,如 Amazon Cognito、Okta)、AgentCore Gateway(作为 OAuth 资源服务器)、AI 客户端(如 Kiro IDE,作为 OAuth 客户端)以及 MCP 服务器。流程如下:
- AI 客户端连接 Gateway 的 MCP endpoint。
- Gateway 返回 401,附带 Protected Resource Metadata 地址。
- 客户端获取 IdP 的授权端点 URL。
- 用户在浏览器中登录 IdP 并授权。
- IdP 返回授权码,客户端用 PKCE 交换访问令牌。
- 后续请求携带令牌,Gateway 验证后转发到 MCP 服务器。
配置步骤包括:在 IdP 中注册 OIDC 应用(启用 Authorization Code 和 Refresh Token grant),配置回调 URI(如 http://localhost:PORT/callback),设置令牌有效期;在 AgentCore Gateway 中启用 JWT 入站授权并指向 IdP 的 discovery URL;在 Kiro IDE 中添加 Gateway URL。
中文圈视角
对于国内企业用户,这套方案有直接参考价值,但需注意几点:
- IdP 选择:AWS 教程使用 Amazon Cognito,但国内企业常用阿里云 IDaaS、腾讯云 EIAM 或自建 Keycloak。理论上支持 OIDC 的 IdP 均可替代,但需确认是否支持 PKCE 和 refresh token。
- 网络与合规:如果 MCP 服务器部署在 AWS 海外区域,国内用户访问可能面临延迟和数据出境合规问题。建议使用 AWS 中国区(如宁夏、北京)或通过专线连接。
- 国产替代:国内类似服务包括阿里云百炼(模型服务平台)的网关功能、华为云 ModelArts 的推理端点,但尚未明确支持 MCP 协议和 OAuth 授权码流程。对于使用国产 AI 助手的团队,可能需要自行实现类似机制。
- 实际场景:该方案适合企业内使用 AI 编程助手(如 Kiro IDE)访问内部 API 的场景,例如查询数据库、调用 CI/CD 管道。国内开发者可参考此架构,结合企业微信或钉钉的 OAuth 实现身份认证。
几条值得记住的细节
- Gateway 通过返回 401 和
www-authenticateheader 触发 OAuth 流程,遵循 MCP 的 Protected Resource Metadata 规范。 - 推荐访问令牌有效期 1 小时,刷新令牌 90 天,可根据安全策略调整。
- 回调 URI 必须使用
localhost和客户端监听的端口,例如http://localhost:3000/callback。 - 可选使用 MCP OAuth proxy 来桥接客户端、IdP 和 MCP 服务器之间的规范差异。
- 教程假设已部署 AgentCore Gateway 和 MCP OAuth proxy,且本地安装了 Kiro IDE。
一句话总结
如果你的团队使用 AI 编程助手访问企业内部工具,这套 OAuth 授权码流程是生产环境的安全标配。