OpenAI API Key 怎么获取和安全使用?

更新于 2026-11-01 · yunwu.cyou

简答:OpenAI API Key 应在 OpenAI Platform 的 API Keys 页面创建,而不是使用 ChatGPT 登录密码;创建后立即保存到密码管理器或密钥管理服务,并通过 OPENAI_API_KEY 环境变量供后端程序调用。完整密钥通常只在创建时显示一次,丢失或疑似泄露时应立即创建新密钥、更新应用并撤销旧密钥。

定义:OpenAI API Key 是用于鉴别 API 请求身份的访问凭据,不等同于 ChatGPT 登录密码或 ChatGPT Plus 订阅。

先看结论:获取和安全使用只需完成这 5 步

本站是独立的 AI API 使用指南站,本文只整理可从 OpenAI 当前公开文档核验的通用方法。新手可以先完成前 1—5 步,生产环境的权限、轮换和支出控制可在首次请求成功后再配置。

  1. 登录 OpenAI Platform,进入 API Keys 页面,创建新的 API Key。官方说明显示,完整密钥只会在创建时显示一次;如果没有保存,需要创建新密钥。
  2. 创建后立即把密钥保存到密码管理器或团队使用的密钥管理服务中,不要发到聊天、工单或公开仓库。
  3. 在本地或服务器设置 OPENAI_API_KEY 环境变量,让 SDK 自动读取密钥。
  4. 使用官方 SDK 或 API 请求发送一次最小请求,确认状态码、响应字段和实际文本都正常。
  5. 进入当前 Platform 控制台核对项目、用量、支出提醒、密钥权限和到期设置;具体菜单、账户能力和生效时间以当前控制台及官方文档为准。

官方获取说明:OpenAI API Key 获取、管理与删除。

检查项成功判定
状态码请求返回成功状态,而不是认证或权限错误
响应字段响应中存在当前接口对应的输出字段
实际文本返回内容与输入问题相关,而不是空响应或错误对象
客户端显示你的 Python、Node.js 或其他客户端能够正常打印结果

OpenAI API Key 在哪里获取?它和 ChatGPT 账号有什么区别?

OpenAI API Key 应在 OpenAI Platform 的 API Keys 页面创建和管理。不要把 ChatGPT 网页版的登录密码、邮箱验证码或其他账户凭据当作 API Key 使用。ChatGPT 网页服务、ChatGPT 订阅和 API 平台属于不同的使用入口;API 是否可用、项目是否具备调用权限、账单或额度是否满足请求,应以当前 Platform 控制台显示为准。

创建密钥后,官方帮助中心明确提醒:完整 Secret Key 只在创建时显示。如果关闭页面后没有保存完整值,通常不能通过页面再次查看原值,应创建一个新密钥并把应用改为使用新密钥。删除旧密钥后,依赖该密钥的程序可能停止工作,因此轮换时要先更新应用,再确认新密钥可用,最后撤销旧密钥。

官方入口和影响说明:Where do I find my OpenAI API Key?。如果控制台菜单与本文描述不同,不要根据搜索结果猜测入口,优先从当前 Platform 页面或该官方帮助中心文章进入。

本地开发:用环境变量保存 Key,再运行最小 Python 请求

官方 Quickstart 展示了使用 OPENAI_API_KEY 环境变量的方式,OpenAI SDK 会从系统环境中读取该变量。下面示例只展示字段结构,不在代码中写入真实密钥;发送请求前应确认模型 ID 仍在你的账户和当前官方文档中可用。

macOS 或 Linux

export OPENAI_API_KEY="你的密钥"

Windows PowerShell

setx OPENAI_API_KEY "你的密钥"

Windows 使用 setx 后,需要打开新的终端窗口,之后启动的程序才可能读取到新变量。不要把真实密钥放进 Git、截图、前端代码或可公开访问的日志。官方安全指南也提醒,环境变量名称可以统一使用 OPENAI_API_KEY,这样代码无需把密钥硬编码在项目中。

Python 最小示例

先安装当前环境所需的官方 Python SDK,再运行以下示例:

from openai import OpenAI client = OpenAI() response = client.responses.create( model="gpt-6-astra", input="用一句话说明 API Key 的作用。" ) print(response.output_text)

当前官方 Quickstart 页面确实展示了 gpt-6-astra 作为示例模型,但模型可用性可能受账户、项目、区域或文档更新影响;如果返回模型不可用,请从当前官方模型目录或控制台复制可用模型 ID,不要盲目更换其他未经核验的名称。官方示例与环境变量说明:Developer quickstart。

Key 应该保存在哪里?不同场景的安全做法

保存方式适用场景注意事项
系统环境变量个人本地开发、临时测试不要把环境变量内容打印到日志或提交到仓库
.env 文件本地项目配置加入 .gitignore;不要上传真实文件或把密钥写入示例配置
Secret Manager服务器、容器、生产环境按应用或服务划分访问权限,避免团队共享同一个长期密钥
浏览器前端或移动 App不适合直接保存 OpenAI API Key请求应经过你自己的后端,否则用户可能提取密钥并代为发起请求
公开 Git 仓库不适用不要提交真实 Key;即使仓库后来删除,历史提交或缓存仍可能暴露凭据

官方安全最佳实践建议团队成员使用各自独立的 API Key,不要共享同一个密钥;支持的项目密钥可以设置到期日期,团队还应建立轮换流程。是否能使用某项权限、到期设置或工作负载身份能力,需要以当前账户和控制台显示为准。

相关官方说明:API 密钥安全最佳实践 与 Production best practices。

生产环境如何降低泄露和异常支出风险?

  1. 按环境隔离:开发、测试和生产尽量使用不同项目或密钥,避免测试代码影响线上应用。项目是否可以单独配置访问、速率或支出限制,以当前控制台为准。
  2. 减少密钥权限:团队成员、服务或项目不要无必要地共用同一个长期密钥;若控制台支持按密钥分配权限,应只授予实际需要的范围。
  3. 建立轮换流程:旧密钥仍在使用时,先创建替代密钥并更新部署配置,确认新密钥请求成功后再撤销旧密钥。
  4. 监控用量:定期查看组织或项目的用量,核对请求量、时间段和应用行为是否匹配。发现异常时先停止可疑应用或撤销相关密钥,再检查日志。
  5. 配置支出控制:官方生产文档区分支出提醒和硬性支出限制。提醒不会自动停止 API 流量;硬性限制可能在达到跟踪支出后停止受影响的 API 流量,但是否可用、生效延迟及是否造成正常请求中断,应以当前控制台和支出限制文档为准。
  6. 后端转发:浏览器、桌面客户端或移动 App 不应直接携带长期 API Key,前端请求应发送到由你控制的后端,再由后端调用 API。

生产环境建议同时查看官方的 生产最佳实践 和 API 密钥安全最佳实践,不要只依赖单个密钥或单项支出设置。

Key 丢失、疑似泄露或出现异常扣费怎么办?

如果只是丢失完整密钥,但没有证据表明已泄露,最稳妥的做法仍是创建新 Key 并更新应用;官方页面不会把已经离开创建流程的完整密钥重新展示。

  1. 立即轮换:进入 API Keys 页面创建替代密钥,不要继续等待异常请求自行停止。
  2. 更新应用:替换服务器、CI/CD、容器、定时任务和本地配置中的旧值;不要把新密钥直接粘贴到公开工单或聊天记录。
  3. 撤销旧 Key:确认新密钥已经成功完成最小请求后,删除或撤销疑似泄露的旧密钥。
  4. 检查用量:查看组织或项目用量,重点核对异常时间段、请求量和使用项目。
  5. 清理暴露位置:检查 Git 提交历史、构建日志、错误日志、截图、浏览器前端包和共享文档,删除不必要的副本。
  6. 继续调查:如果无法解释异常请求或支出,保留时间、项目、响应错误和用量记录,再通过官方支持渠道进一步处理。

不要在诊断命令中直接输出完整环境变量,例如不要把 echo $OPENAI_API_KEY 的结果复制到公开页面;核验时只检查变量是否存在、长度是否合理或是否使用脱敏后的前后几位。

常见错误:为什么 Key 看似正确仍然调用失败?

现象优先检查
401 或认证失败环境变量是否在当前进程生效、是否复制了完整 Key、程序是否读取了旧配置;查看响应体中的 error.code 和 message,不要只凭状态码下结论。
403 或权限错误项目、密钥权限、组织归属、区域或接口能力是否匹配;具体原因以响应体和当前控制台为准。
404 model not found模型 ID、请求路径和项目可用模型列表;不要直接套用网上旧教程中的模型名称。
429区分限流、额度、账单或并发问题,查看响应体、响应头和用量页面后再决定是否重试。
环境变量为空是否在设置变量后重新打开终端、是否从正确的运行环境启动程序,以及变量名是否严格为 OPENAI_API_KEY。

错误排查顺序建议固定为:凭据 → 最终 URL 和路径 → 模型 → 项目权限或区域 → 最小请求 → 错误响应体。这样可以避免把所有失败都归因于 Key 本身。

常见问题

ChatGPT Plus 是否自动包含 OpenAI API Key?

不能直接这样理解。ChatGPT 网页服务、订阅和 OpenAI Platform API 是不同入口;API Key 需要在 Platform 的 API Keys 页面创建,具体账单、额度和模型可用性以当前账户控制台为准。

OpenAI API Key 创建后还能再次查看吗?

官方帮助中心说明,完整 Secret Key 只在创建时显示。如果没有保存完整值,应创建新 Key,并在应用中替换旧配置;不要尝试从日志或网页缓存中恢复密钥。

可以把 OpenAI API Key 放在浏览器前端吗?

不建议。浏览器、移动 App 或其他客户端中的密钥可能被用户提取,随后被用于发起请求。更安全的做法是让前端调用自己的后端,由后端读取环境变量或 Secret Manager 中的密钥。

API Key 疑似泄露后第一步做什么?

第一步是进入 API Keys 页面创建替代密钥并更新应用;确认新 Key 可用后撤销旧 Key,再检查用量和部署日志。不要只修改本地文件而不处理已经暴露的旧密钥。

为什么设置了 OPENAI_API_KEY,程序仍然提示认证失败?

先确认变量是在启动程序的同一个终端或运行环境中设置的,再检查变量名、Key 是否完整、SDK 是否读取了该变量,以及最终请求使用的项目和接口。查看完整错误响应体,而不是只看 401 状态码。

支出提醒能否自动阻止 API 请求?

不能把两者混为一谈。官方文档区分支出提醒和硬性支出限制:提醒用于通知,是否能配置硬性限制、何时生效以及是否影响正常请求,要以当前控制台和官方支出限制说明为准。

相关阅读

参考资料

  1. Where do I find my OpenAI API Key?
  2. API 密钥安全最佳实践
  3. Developer quickstart
  4. Production best practices
logo

x

这是什么,适合哪些用户?

YUNWU.CYOU(云雾 API)是面向开发者的 Web API 接口平台,页面介绍其可通过统一接口接入 Claude、GPT、Gemini 等模型,并提供多模态理解、OpenAI 接口协议兼容及 Midjourney 相关反代与中文翻译接口。它更适合需要集中管理多种模型、已有应用接入需求,或希望按业务场景选择分组的用户;具体模型范围和可用状态应以公告为准。

如何开始使用与选择分组?

开始前可先阅读页面中的 API 文档和系统公告,确认当前支持的模型、分组规则及接入方式;随后登录控制台,进入“API令牌”,新建令牌并选择分组,再按文档把令牌配置到兼容的客户端或应用中。页面提示不同分组的价格与可用性可能不同,建议结合实际调用需求选择,并在调整前留意模型重定向、自动换分组重试等变更说明。

使用前需要注意什么?

使用前应核实域名、公告、生效时间和模型分组,尤其关注渠道调整、内容审核及账号处置规则。令牌属于账户凭证,不要放入公开代码、截图或提交记录,并定期检查调用情况。接入模型生成内容时,还需遵守适用法律、平台条款和第三方服务规则;价格、可用性、响应表现及支持范围若页面未明确,应以其公告为准。

常见问题

YUNWU.CYOU(云雾 API)支持哪些模型?

页面列出 Claude、GPT、Gemini 等主流模型,并提到 Midjourney 相关服务;具体可用模型、分组和倍率会调整,使用前请查看 API 文档与系统公告。

如何创建并使用 API 令牌?

登录控制台后进入“API令牌”,选择新建令牌和所需分组并确认,再依据文档配置到兼容客户端或应用;权限与配置细节以页面说明为准。

分组应该怎么选择?

页面提示较低价格可能影响速度,较高价格代表可用性更高。建议先按模型、业务需求和预算比较,并在调整前核对当期分组说明。

本页为第三方整理的介绍,与 YUNWU.CYOU(云雾 API)无关联,具体信息以其公告为准。