做过 AI 应用开发的都知道,用户登录不难,难的是让 AI Agent 替用户干活。

传统的 OAuth 2.0 是给人设计的——弹窗、点击授权、拿 Code。换成异步的 AI Agent,这套流程根本走不通。

当大家都在卷大模型和 RAG 时,“Agent 如何安全地调用 API”成了被低估的暗坑。Logto 用 MCP 协议给出了一个漂亮的答案。

Logto 是一个开源的认证与授权基础设施,基于 OIDC 和 OAuth 2.1 标准,内置多租户、企业 SSO 和 RBAC。截至目前,它在 GitHub 上已获得超过 1.4 万 Star。

先解决 AI Agent 最头疼的“委托授权”

AI 应用带来的根本性问题是:调用 API 的不再只是“用户”,还有“AI Agent”。

当 Agent 需要代表用户访问数据时,传统的 OAuth 授权流程(每次都要用户点一下)就不适用了——你不能让 Agent 每调用一次就让用户授权一次。Logto 的 MCP 协议支持和 Secret Vault 就是为了解决这个“代理授权”问题。

Logto 的 MCP 方案怎么工作?

一次授权,Agent 永久安全调用

用户在前端完成登录授权后,Logto 的 Secret Vault 会自动托管第三方服务的 Access Token 和 Refresh Token。AI Agent 只需通过 MCP 标准协议向 Logto 询问:“这个用户允许我调用哪些 API?”,完全不需要 Agent 触碰用户原始密钥。

细颗粒度的 AI 权限沙箱

你可以将 MCP 服务器转变为资源服务器,为 AI Agent 提供有范围限定的访问权限,并配合用户登录和明确授权(Consent)。即使 LLM 被 Prompt 注入攻击,攻击者拿到的也只是权限极小的受限 Token,核心数据稳如泰山。

告别频繁的 OAuth 弹窗

传统 OAuth 第三方集成每次过期都要找用户重授权,对自动化 Agent 是灾难。Logto 的后台自动刷新令牌机制,让 AI 工作流实现 7×24 小时无人值守合规运行。

完整的审计追溯

每一次授权和撤销都有完整的审计日志。谁、什么时间、给哪个 Agent、授予了什么权限——全部可查,轻松通过 SOC2 审计。

顺手把 SaaS 多租户也解决了

做过 B2B SaaS 的都知道,“多租户”三个字背后是什么——每个企业客户要独立的数据隔离、独立的登录策略、独立的成员管理,还要支持他们自己的 SSO(可能是 Okta、Azure AD,甚至是一套自建的 SAML)。如果全部从零开始,光 SAML 协议就能让你加班一个月。

Logto 原生内置了组织/工作区模型,租户数据完全隔离、企业级 SSO 、组织级 RBAC,全部开箱即用。

这意味着你不需要自己设计租户隔离方案、不需要手写企业 SSO 集成代码、不需要维护复杂的角色权限表——真正的降本增效。

5 分钟部署你的认证基础设施

docker-compose 配置

创建 docker-compose.yml 文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
services:
logto:
image: ghcr.io/logto-io/logto:latest
container_name: logto
restart: always
ports:
- "3001:3001"
- "3002:3002"
environment:
- TRUST_PROXY_HEADER=1
- ENDPOINT=https://auth.your-domain.com
- ADMIN_ENDPOINT=https://admin.your-domain.com
- DB_URL=postgres://username:password@your-postgres-host:5432/logto_db
command: sh -c "npm run cli db seed -- --swe && npm start"
volumes:
- ./connectors:/etc/logto/packages/core/connectors

⚠️ 生产环境记得替换 ENDPOINT 和 DB_URL 的值为真实地址,且必须使用 HTTPS 域名。

启动服务

1
docker compose up -d

首次启动会自动初始化数据库表结构与索引,等待几秒即可完成初始化。

查看启动日志确认服务正常运行:

1
2
3
4
docker compose logs -f

Core app is running at http://localhost:3001
Admin app is running at http://localhost:3002

访问管理控制台

打开浏览器访问 http://localhost:3002(或你配置的域名),点击“创建账户”,完成注册。

注意:开源版仅在首次启动时允许创建一个管理员账户,请妥善保管

集成你的第一个 AI Agent

服务跑起来后,你可以:

  1. 创建应用:在管理控制台点击 “Applications” → “Create Application”,选择类型(Web、SPA、Native、M2M 等)
  2. 获取凭证:记录 App ID 和 App Secret
  3. 配置 MCP 认证:在 Logto 中设置第三方应用,用于代表 AI Agent 获取认证和授权凭证
  4. 集成 SDK:Logto 提供 38+ 主流框架的 SDK(React、Next.js、Vue、Go、Python、Flutter……),几行代码即可接入

如果使用 Logto MCP Server,你甚至可以直接在 IDE 里用一句话完成配置——“把 Logto 整合到我的项目”,Agent 会自动检测你的技术栈、创建 Logto 应用、应用正确配置,并生成可直接运行的集成代码。支持 Cursor、VS Code、OpenCode、Claude Desktop 及任何支持 MCP 授权的客户端。

避坑提醒

  • 数据持久化:千万不要使用官方快速体验的临时 PG,必须用独立 PostgreSQL + 持久化卷
  • 端口冲突:如果 3001/3002 被占用,修改 ports 映射即可(如 3003:3001)

写在最后

身份认证、权限体系、企业 SSO、AI 授权——这些不是你的业务核心,却是最耗时间、最容易出漏洞的模块。

Logto 把这些全部封装好了。开源、免费、5 分钟部署、GitHub 1.4 万 Star 验证。

如果你正在开发 SaaS 系统、AI 应用,强烈建议试一试,把时间留给真正的业务创新。