API Key 怎么管才安全
密钥泄露是最常见的事故。这篇讲存放、轮换、权限最小化和泄露后的处理。内容基于实测数据,附可操作的判断方法和检查清单。
工具更新 2026-10-28· 真机验证 2026-10-28 by 码农阿风
三条铁律
1. 不写进代码
# 错
api_key = "sk-xxxxxxxx"
# 对
api_key = os.environ["OPENAI_API_KEY"]
提交到 Git 就等于公开。 公开仓库的爬虫几分钟内就会扫到。
2. 不写进前端
浏览器里能看到的 key,等于公开的 key。前端只能调你自己的后端,后端再调模型。
3. 不进日志
打印请求时要脱敏,尤其是错误日志经常带完整 header。
权限最小化
- 一个应用一把 key
- 能限制 IP 就限制
- 能设额度上限就设
- 定期轮换(3-6 个月)
泄露了怎么办
- 立刻吊销(不是改密码,是直接删 key)
- 查用量,看有没有异常消费
- 检查代码仓库历史(不只是当前版本)
- 通知服务商
一个容易忽略的点
本地配置文件也会泄露:~/.aws/credentials、.env、config.json 经常被打包分享出去。