AI API Key 怎么安全管理?环境变量、服务端中转、轮换和泄露应急
OpenAI/Gemini/Claude 等 AI API Key 被盗刷往往是放错了地方。讲清 key 只放服务端、用环境变量、绝不进前端和 git、设置用量上限、定期轮换,以及泄露后的应急步骤。
Published: 2026-06-06 / Updated: 2026-06-26
OpenAI、Gemini、Claude 的 API Key 等于你账号的钱包。被盗刷几乎都是同一个原因:key 放到了不该放的地方——前端代码、提交进了 git、或贴进了公开仓库。下面是从"放哪里"到"泄露了怎么办"的完整安全做法。
一、key 只能放服务端,绝不进前端
最致命的错:在客户端组件或 NEXT_PUBLIC_ 变量里用 key。这等于把钱包贴在网页上——任何访客打开开发者工具就能拿走。
正确做法:key 放服务端环境变量,前端只调你自己的后端接口(Next.js 用 Route Handler 中转)。判断标准很简单:浏览器能看到的地方,绝不放 key。
二、用环境变量,别硬编进代码
# .env.local —— 必须进 .gitignore
OPENAI_API_KEY=sk-xxxxx
ANTHROPIC_API_KEY=sk-ant-xxxxx
- 代码里用
process.env.OPENAI_API_KEY读,不写死字符串; - 给 AI API 的 key 绝不加
NEXT_PUBLIC_/VITE_前缀(加了就等于公开); - 部署平台(Vercel / CI)在后台配同样的变量,本地
.env不上传。
三、确认 .env 没进 git
最常见的泄露是 .env 被误提交。检查:
git ls-files | grep -i env # 不该出现 .env / .env.local
.gitignore 里必须有 .env*。已经提交过的,光删文件不够——key 还在历史里,必须吊销换新(见五)。
四、设用量上限 + 最小权限
- 在 OpenAI / Anthropic / Google 后台设月度用量上限 / 预算告警,被刷也有天花板;
- 能力允许就用受限权限的 key(只给需要的范围);
- 不同项目用不同 key,方便单独吊销,互不牵连。
五、定期轮换(rotation)
key 不是一次配好就不管:
- 定期生成新 key、更新到各环境、再吊销旧 key;
- 团队成员离职、换设备、key 可能泄露时,立即轮换;
- 轮换时先加新 key 再撤旧 key,避免服务中断。
六、泄露了怎么应急(按顺序)
- 立刻去对应平台后台吊销(revoke)这个 key——这是第一步,别犹豫。
- 生成新 key,更新到服务端环境变量和部署平台。
- 查后台用量,看有没有异常调用、估算损失,必要时联系平台。
- 如果 key 进过 git 历史,新 key 配好后,按需清理历史(
git filter-repo等,谨慎,会改写历史)。 - 复盘泄露路径(前端?git?截图?日志?),堵住源头。
让 Codex 辅助
我担心 AI API key 安全(说明你现在 key 放在哪:前端 / .env / 硬编码 / 已进 git)。
请判断风险等级和该不该立刻轮换,给出把 key 收回服务端的步骤;
涉及 git 历史清理的,提醒我风险。
风险提醒
- 截图、录屏、发issue、贴日志时检查有没有带出 key。
- 帮客户做项目用客户自己的 key 和账号,别用你的额度替客户承担用量和风险。
相关工具
相关 AI 接入
接其他模型 / 管好 key 一起看:
免责声明
本文做法对应主流 AI 平台与部署平台的通用安全建议,供学习参考;涉及客户密钥、账单和生产环境时需明确授权并人工复核。
读完后可以直接用的工具
根据这篇文章的主题自动匹配,先用工具做判断,再人工复核交付。
SEO path
Continue through the same topic network
Use a practical tool after reading this guide
先用工具做判断,再用模板整理交付。生成内容只能作为草稿,不要不审核就直接发给客户。
Related articles
需要人工协助配置或排错?
你可以先用本站工具和模板自助排查。若确实卡在 Codex、Claude Code、GitHub、Vercel 配置或客户需求判断上,可以通过联系页咨询。服务不是主业入口,只作为少量高价值人工协助保留。
联系我