Appearance
Infisical 是密钥管理平台,通过与 OpenRouter Management API key 集成,可按计划自动轮换 OpenRouter API key。轮换机制:创建新 key → 更新 Infisical 中的 secret 值 → 撤销旧 key,应用从 Infisical 读取 secret 自动获得新 key,全程零停机。支持设置轮换间隔、每日/每周/每月消费限额重置,以及控制 BYOK 用量是否计入限额。
Infisical 是密钥管理平台,帮助团队安全存储、同步和轮换各类凭证。通过 Infisical 的 OpenRouter 集成,可按计划自动轮换 API key,确保凭证安全且实现零停机轮换。
前置要求:创建 Management API Key
注意:需要 OpenRouter Management API key,这是专门用于密钥管理操作(创建、列举、删除 key)的特殊 key,不能用于模型调用请求。
在 OpenRouter 设置 > Management API Keys 创建,妥善保存——配置 Infisical 连接时需要它。
Management API key 的详细说明参见 Management Keys 文档。
第一步:在 Infisical 中创建 OpenRouter 连接
- 在 Infisical 控制台进入 Organization Settings > App Connections(或项目中的 App Connections 页面)
- 点击 Add Connection,选择 OpenRouter
- 填写:
- OpenRouter Management API Key
- 连接名称(如
openrouter-production) - 可选描述
- 点击 Create — Infisical 验证 key 有效性后保存连接
详细图文说明:Infisical OpenRouter Connection 文档
第二步:配置 API Key 轮换
- 在 Secret Manager 项目的 Dashboard 中,选择 Add Secret Rotation
- 选择 OpenRouter API Key
轮换行为设置
| 设置项 | 说明 |
|---|---|
| Auto-Rotation Enabled | 开关自动轮换,关闭后只能手动触发 |
| Rotate At | 触发时间点(本地时区) |
| Rotation Interval | 轮换间隔天数 |
| OpenRouter Connection | 用于创建/撤销 key 的连接(含 Management API key) |
API Key 参数
| 参数 | 说明 |
|---|---|
| Key name | key 在 OpenRouter 中的显示名称(必填) |
| Limit | 可选消费上限(美元) |
| Limit reset | 上限重置频率:daily / weekly / monthly |
| Include BYOK in limit | BYOK 用量是否计入消费上限 |
Secret 映射
指定 Infisical 中存储轮换后 API key 值的 secret 名称,应用从这个 secret 读取最新 key。
零停机轮换原理
轮换触发时的执行顺序:
- 创建新 OpenRouter API key
- 更新 Infisical 中对应的 secret 值为新 key
- 撤销上一个旧 key
应用从 Infisical 读取 secret,自动获得新 key,整个过程无需重启服务。
理解 BYOK 和消费限额
BYOK(Bring Your Own Key):OpenRouter 支持使用你自己的 Provider API key(如 OpenAI、Anthropic),这部分请求费用直接付给 Provider,OpenRouter 收取少量网关费。
Include BYOK in limit 控制 BYOK 用量是否计入 key 的消费限额:
| 设置 | 行为 |
|---|---|
| 关闭(默认) | 只有 OpenRouter credits 用量计入限额,BYOK 用量单独追踪 |
| 开启 | BYOK 用量也计入限额,达到限额后该 key 受速率限制直到下次重置 |
更多:OpenRouter BYOK 文档 | API Key 速率限制
常见问题
Q: 为什么需要单独的 Management API key,不能用普通 API key 吗?
A: Management API key 是权限分离设计:普通 API key 只能调用模型,Management API key 只能管理密钥(创建/删除)。这样 Infisical 的轮换操作不会获得调用模型的权限,遵循最小权限原则。
Q: 轮换期间旧 key 被撤销后,正在处理的请求会怎样?
A: 轮换按照"先创建新 key → 更新 Infisical secret → 再撤销旧 key"的顺序执行。应用在撤销前就已经可以获取新 key,这是实现零停机的关键。实际上,短暂的 overlap 期间新旧 key 同时有效。
Q: 如何在应用中使用 Infisical 存储的 key?
A: 应用通过 Infisical SDK 或 Agent(Infisical 的边车进程)从 Infisical 读取 secret 并注入为环境变量,应用代码从 process.env.OPENROUTER_API_KEY(或你设置的 secret 名称)读取,无需感知轮换细节。