什么是 Open Connector
了解 Open Connector 的设计理念和核心价值主张。
问题:Agent 需要持有它们不应该拥有的凭证
现代 AI Agent 的设计目标是行动 — 创建 GitHub issue、发送 Telegram 消息、推送代码提交。每一项操作都需要对第三方 API 进行身份认证,这意味着需要凭证:OAuth Token、API Key、服务账户密钥。
直接将原始 Token 交给 Agent 存在严重风险:
- Token 会通过日志、模型上下文窗口和工具输出发生泄漏
- 长期有效的 Token 无法按 Agent 或按项目进行范围限制
- 没有审计追踪:您无法知道哪个 Agent 使用了哪个凭证,以及何时使用的
- 撤销访问权限意味着需要轮换所有 Agent 共同依赖的密钥
像 Composio 这样的托管平台通过集中凭证存储来解决这一问题 — 但那个存储在它们的基础设施上,而不是您的。
解决方案:您自己拥有的凭证代理
Open Connector 是一个凭证代理:一个位于您的 Agent 与它们所调用的 API 之间的轻量级服务器。Agent 使用范围化的 API Key 进行认证;Open Connector 从加密保险库中解析出真实的 OAuth Token,代替 Agent 调用上游 API,并将结果返回给 Agent。
Agent ──(x-api-key)──▶ Open Connector ──(OAuth Token)──▶ GitHub / Telegram / …
│
加密保险库
(您的 Postgres)您的原始 Token 永远不会离开您的基础设施。Agent 只能看到范围化的响应结果,而非凭证本身。
核心差异化优势
开源
完整源代码托管于 GitHub。可自由审计、Fork 和贡献。无黑盒凭证处理。许可条款详见 LICENSING.md。
可自托管
您的 Postgres、您的 OAuth 应用、您的加密密钥。没有任何供应商持有您的 Token。
兼容 Composio SDK
只需修改一行 baseURL — 相同的 Composio SDK 代码即可对接您的自托管实例。
防篡改审计日志
每次凭证使用都写入 SHA-256 哈希链日志。任何被篡改的记录都会破坏整条链。
功能概览
加密凭证保险库
凭证在写入 Postgres 之前会使用 AES-256-GCM 进行加密。加密密钥(CONNECTOR_ENCRYPTION_KEY)永远不会离开您的服务器进程。即使拥有直接数据库访问权限,没有密钥也无法读取凭证。
多协议认证支持
Open Connector 运行时包含三种凭证协议;Provider Catalog 会基于这些协议,展示用户实际选择的授权方式:
| 授权方式 | 运行时协议 | 工作方式 |
|---|---|---|
| OAuth 2.0 Authorization Code | oauth2 | 通过重定向完成用户授权并支持 PKCE;自动管理 Refresh Token |
| OAuth 2.0 Client Credentials | oauth2 | 使用 Client ID 与 Client Secret 完成机器到机器的 Token 交换 |
| API Key / API Token | api_key | 将一个或多个密钥存入保险库,并在调用时注入请求头、查询参数或请求体 |
| Bearer Token | api_key | 将 Provider Token 作为凭证保存,并注入 Authorization: Bearer … 请求头 |
| Basic Auth | basic | 用户名和密码加密存储,调用时编码后写入 Authorization 请求头 |
| 无需认证 | Tool 级 no_auth | 公共 Tool 无需创建 Connected Account 即可执行 |
Provider Catalog 可以为这些方式配置 Provider 专属名称与凭证字段。托管 OAuth 与自带 OAuth 应用使用相同的 OAuth 协议,区别只在于 OAuth Client 凭证由谁提供。
Agent 原生 API Key 认证
Agent 使用 x-api-key 请求头进行认证。Key 的作用范围限定于某个项目,并在 Key 记录中携带元数据(允许的连接器、速率限制)。即使某个 Agent Key 泄露,也可以单独轮换,而不影响其他 Agent 的访问权限。
哈希链审计日志
每次凭证使用都会触发结构化审计事件。每个事件包含前一个事件的 SHA-256 哈希值,从而形成一条链。如果任何记录被修改或删除,其后续的所有哈希值都会失效,使篡改行为立即可被检测到。
与 Composio 的对比
| Open Connector | Composio | |
|---|---|---|
| 托管方式 | 自托管(您的基础设施) | 托管 SaaS |
| 源代码 | 开源(LICENSING.md) | 闭源 |
| 凭证存储 | 您的 Postgres,您的加密密钥 | Composio 的保险库 |
| SDK 兼容性 | 兼容 Composio SDK | Composio SDK |
| 审计日志 | 哈希链,存储在您的数据库中 | Composio 控制台 |
| 定价 | 免费(仅需支付基础设施成本) | 按用量计费 |
| OAuth 应用 | 您自己注册的 OAuth 应用 | Composio 的共享应用 |
使用您自己的 OAuth 应用(而非共享平台应用)意味着您的用户是对您的应用进行授权 — 您的品牌形象、您的授权页面、您对 Token 的所有权。
Open Connector 不是什么
- 不是通用的 API 网关或反向代理
- 不是 Agent 框架(它适用于任何 Agent:LangChain、LlamaIndex、Vercel AI SDK、原始 HTTP 请求)
- 不是通用密钥管理器(通用密钥请使用 Vault 或 AWS Secrets Manager;Open Connector 专注于凭证生命周期管理)