跳到主内容

API key 怎么管?生成存储与轮换

2026-10-29 发布 来源:我告诉你AI导航 阅读

AI 应用接上模型之后,真正的安全工作才刚开始:那把以 sk- 开头的 key,是打开你账户额度与计费的钥匙,谁拿到谁就能花你的钱。key 管理在开发者社区是高频事故源——写进代码随手提交、多项目共用一把、离职人员手上还有存货。这篇...

AI 应用接上模型之后,真正的安全工作才刚开始:那把以 sk- 开头的 key,是打开你账户额度与计费的钥匙,谁拿到谁就能花你的钱。key 管理在开发者社区是高频事故源——写进代码随手提交、多项目共用一把、离职人员手上还有存货。这篇按入门篇的惯例给完整做法:认识 key 的形态、生成时怎么开、存到哪里、什么时候轮换、怎么按项目隔离,每一步都是可执行的动作;key 已经泄露的应急处理是另一篇的事,见key 泄露应急。

认识 key:形态、显示一次与生命周期

先认识对象。key 是一串以 sk- 开头的长字符串,创建时由后台生成,多数平台只完整显示这一次,离开页面就再也看不全——所以创建时的第一动作是当场存进安全的地方。key 的生命周期由你掌控:创建、启用、禁用、删除都是后台可操作的动作,这意味着轮换永远可行,也意味着每把 key 从诞生起就该有归属——它属于哪个项目、给谁用、什么时候该退休。心里有这本账,管理才谈得上;记不清自己有几把 key 的人,出事时连该作废哪把都说不出来。

生成:按项目开 key,权限最小化

生成阶段的纪律是按需开、最小化。按需开:每个项目独立生成 key,别一把钥匙全家用,项目隔离的好处后文单独展开。最小化:平台提供的权限范围——可用模型、额度上限、接口范围——按任务实际需要给,能限就限;额度上限尤其值得设,它是泄露事故的自动刹车。命名也要认真:把项目、环境、负责人写进 key 的备注名,出事时能立刻定位是哪把 key、谁的责任。首次调用还没走通的话,首次调用一篇有从零到第一段回复的完整链路,先能跑再谈管。

存储:环境变量加 .env,远离仓库

存储的原则一句话:key 只待在运行环境里,不进代码、不进仓库、不进聊天记录。落到操作是三件事。第一,运行时从环境变量读取,部署平台与 CI 都支持在配置里注入环境变量,代码里只出现变量名。第二,本地开发用 .env 文件承载,配合加载库读入,.env 必须写进 .gitignore;仓库侧更稳的做法是白名单入库,存储层面的详细展开见key 存储一篇。第三,团队共享时走密钥管理工具或平台的成员配置,别把真 key 贴进群聊和文档。存储与配置分离的原则,与 agent 工具链里的做法同源,见凭据分离一篇。

场景做法要守的线
线上运行部署平台与 CI 在配置里注入环境变量代码里只出现变量名
本地开发用 .env 承载,配合加载库读入.env 写进 .gitignore
团队共享走密钥管理工具或平台的成员配置真 key 不进群聊与文档

轮换:定期换锁与触发式换锁

轮换的思路是定期加触发。定期:给 key 设一个固定的更替周期,按团队节奏定,周期一到就走一遍轮换流程;周期本身不重要,重要的是「key 有年龄」这个意识。触发式:出现人员变动、项目下线、疑似泄露、异常用量这些信号时当天就换,不等周期。轮换的标准流程三步:先生成新 key,再把所有使用点——环境变量、CI 配置、部署平台——替换成新 key,确认运行正常后作废旧 key。顺序别反:先删旧 key 会让线上服务当场断掉。轮换与存储的通用方法论,密钥轮换一篇有更系统的展开。

项目隔离:一把钥匙开一扇门

项目隔离是 key 管理里性价比突出的一招:每个项目、每个环境(开发与生产)各用各的 key,互不通用。好处有三:泄露面收窄,一把 key 泄露只影响一个项目;对账清晰,用量面板按 key 一眼分清哪个项目花了多少;吊销精准,出事时作废一把 key 不殃及全局。隔离与最小权限配合,等于给每把 key 都画了圈——圈越小,事故半径越小。这套做法与安全领域的最小授权原则同源,把「能出的事」提前框住。想让规范落地成文档,可以让 Kimi 起草一份团队的 key 管理约定(命名、存储、轮换、隔离四节),再用通义千问做一轮合规与漏洞审读,查漏补缺后贴进团队仓库。

key 管理速查

  • key 以 sk- 开头,创建只显示一次,当场入库存放
  • 按项目与环境独立开 key,权限与额度按需给
  • key 只走环境变量与 .env,.gitignore 必配
  • 轮换三步:先建新、再替换、后作废旧 key
  • 人员变动、疑似泄露、异常用量,触发式当天就换

关于 key 管理的三问三答

  • key 可以多人共用吗?不建议。共用的 key 无法定位使用者,出事时只能全作废;按人按项目各开各的,吊销才精准。
  • 轮换要停服务吗?按「先建新、再替换、后作废」的顺序做,替换完确认运行正常再删旧的,全程不停服。
  • 测试和生产的 key 要分开吗?要。开发环境权限可以宽、额度可以低,生产环境收紧,分开后测试代码永远碰不到生产额度。

反馈页面信息

请描述需要更正的地方,页面标题和网址会自动附上。

也可以发邮件至 [email protected]