### [MCP认证怎么做?Token、Basic与OAuth入门](https://alyyhw.com/article/2059) **Published:** 2026-07-13T04:41:05 **Author:** AI菜鸟网 **Excerpt:** 不是所有认证都该混着用:这篇文章帮你看懂 Token、Basic、OAuth 在 MCP 场景中的适用边界和风险。 MCP 真正进入实战后,认证问题几乎一定会出现:到底是给一个 Bearer Token 就够了,还是要上 OAuth?Basic Authentication 还能不能用?本地和远程是不是应该用同一套方式?如果你不先把这些边界看清,最常见的结果就是两种:要么为了省事把高权限密钥到处复制,要么因为配置复杂而迟迟接不起来。 ## 先记住一个原则:认证方式要跟场景匹配 本地 stdio 场景,常常可以直接依赖本机环境变量、系统登录态或嵌入式库完成凭证获取;远程 HTTP 场景,因为跨网络、跨用户、跨系统,认证和授权要求会明显更高。MCP 官方授权教程明确指出:当服务器访问用户数据、管理动作、需要审计或企业级访问控制时,强烈建议使用授权机制;而授权规范进一步围绕 OAuth 2.1、资源元数据和发现机制做了要求。这意味着,越靠近多用户远程服务,越不应该只靠随手贴一个长期令牌了事。 ## Token 认证适合什么情况 Token 最常见也最容易理解。客户端在请求头中带一个访问令牌,服务器据此识别身份和权限。它的优点是简单、接入成本低,很多远程 MCP 服务都会先提供 Bearer Token 方式。缺点也很明显:如果令牌长期有效、范围又大,一旦泄露后果会比较严重。所以使用 Token 时,至少要关注四件事:令牌是否可撤销、是否短期有效、是否有范围限制、是否通过安全位置传递而不是硬编码在共享文件里。 ## Basic Authentication 什么时候还能用 Basic 不是 MCP 专属方案,但在某些受控场景里仍然会出现。最典型例子是 WordPress Application Passwords:WordPress 官方文档说明,这类应用密码本质上用于 API 认证,常通过 HTTP Basic Authentication 发送,用户名是 WordPress 登录名,密码是生成的应用密码,而且必须配合 HTTPS 使用。换句话说,Basic 并不是绝对过时,而是不适合裸奔在不安全网络上,也不适合替代更完整的多用户授权体系。 ## OAuth 为什么更适合远程 MCP OAuth 的优势不是“更高级”,而是它把用户授权、令牌签发、范围控制、过期刷新、撤销和审计这些事情拆得更清楚。MCP 授权规范把受保护的服务器视为 OAuth 资源服务器,并要求围绕受保护资源元数据和授权服务器发现来完成流程。对使用者来说,最直观的好处是:你不必把主密码或永久密钥交给客户端,而是让用户在浏览器里明确授权,再发回可控范围的访问令牌。 ## 三种方式怎么选 - 本地个人脚本、本地目录、本地开发工具:优先考虑环境变量或本地凭证方案,不必强上 OAuth。 - 单用户、低风险、短期验证的远程服务:可先用 Bearer Token,但要限制范围和有效期。 - 多用户、企业、用户数据、后台管理或长期接入:优先设计 OAuth。 - 像 WordPress Application Passwords 这类官方支持的 API 凭证:可以用 Basic,但必须走 HTTPS,并配合最小权限账号。 ## 最容易踩的坑 - 把 Token 当永久密码用,既不轮换也不缩小范围。 - 把 Basic 和 OAuth 混成一锅,明明需要用户授权却还在分发共享账号密码。 - 把应用密码写进仓库或聊天记录,完全失去撤销和审计意义。 - 看到服务支持 OAuth,却为了省事退回长期管理员令牌。 - 拿到任何客户端传来的令牌就直接透传下游,忽略目标受众和校验。 ## 一个实用的落地顺序 1. 先识别你的服务器是本地还是远程、单用户还是多用户。 2. 再判断能力是只读还是高风险写入。 3. 据此选择环境变量、受控 Token、Basic 应用密码或 OAuth。 4. 最后再设计轮换、撤销、范围收缩和失败回退方案。 这样做的好处是,你不会在还没搞清业务风险前,就盲目选一个看起来最省事的方案。 ## 还要把认证和权限分开想 很多接入失败并不是因为认证方式选错,而是把“我是谁”和“我能做什么”混成了一件事。认证负责证明身份,授权负责限制范围。你完全可以用同一种认证方式,配出只读、草稿写入和正式发布三种不同边界。把这层拆开思考后,设计会更清晰,后续排错也更容易定位。 ## 相关阅读 - [如何判断一个MCP服务是否安全可靠](/mcp-tutorials-03/) - [本地MCP与远程MCP有什么区别](/mcp-tutorials-06/) - [MCP实战:让AI安全管理WordPress内容](/mcp-tutorials-10/) ## 总结 Token、Basic 和 OAuth 没有绝对的好坏,只有是否适合当前风险边界。能短就别长,能缩范围就别全开,能授权就别共享主密码,能撤销就别写死。把这四句话做到位,你的 MCP 认证设计就已经超过很多只会“先跑起来再说”的接入方式了。 **Tags:** Basic认证, Bearer Token, MCP认证, OAuth **Categories:** AI编程, MCP教程 ---