logo

OpenAI API Authentication

OpenAI API 现在最核心的认证方式仍然是 API key,通过 HTTP Bearer authentication 传递。对大多数项目来说,真正要解决的不是“会不会加 header”,而是“怎么把 key 放对地方、别泄露、别在多项目环境里配错”。

最基础的认证头

Authorization: Bearer $OPENAI_API_KEY

这仍然是官方 reference 里的默认方式。

多组织或多项目时要注意什么

如果你属于多个 organization,或者通过 legacy user API key 访问多个 project,可以额外传:

OpenAI-Organization: $ORGANIZATION_ID
OpenAI-Project: $PROJECT_ID

这一步在多环境或团队协作时很关键,否则你可能会把流量打到错误项目里。

环境变量仍然是最稳的做法

macOS / Linux

export OPENAI_API_KEY="sk-..."

Windows PowerShell

$env:OPENAI_API_KEY="sk-..."

SDK 默认会从环境变量里读取 key,所以这也是官方 quickstart 的默认路径。

真实项目里更重要的 3 个提醒

  1. 不要把 key 暴露到前端代码
  2. 不要在日志里打印完整 key
  3. 多组织 / 多项目时显式写清上下文

很多所谓“认证问题”,最后不是 header 写错,而是环境和 project context 混掉了。

OpenAI API Guide
AI Engineer

OpenAI API Guide

Build with the OpenAI API using Responses API, streaming, tools, embeddings, and multimodal inputs.

OpenAI API GuideAuthentication

OpenAI API Authentication

OpenAI API 现在最核心的认证方式仍然是 API key,通过 HTTP Bearer authentication 传递。对大多数项目来说,真正要解决的不是“会不会加 header”,而是“怎么把 key 放对地方、别泄露、别在多项目环境里配错”。

#最基础的认证头

bash
Authorization: Bearer $OPENAI_API_KEY

这仍然是官方 reference 里的默认方式。

#多组织或多项目时要注意什么

如果你属于多个 organization,或者通过 legacy user API key 访问多个 project,可以额外传:

bash
OpenAI-Organization: $ORGANIZATION_ID OpenAI-Project: $PROJECT_ID

这一步在多环境或团队协作时很关键,否则你可能会把流量打到错误项目里。

#环境变量仍然是最稳的做法

#macOS / Linux

bash
export OPENAI_API_KEY="sk-..."

#Windows PowerShell

powershell
$env:OPENAI_API_KEY="sk-..."

SDK 默认会从环境变量里读取 key,所以这也是官方 quickstart 的默认路径。

#真实项目里更重要的 3 个提醒

  1. 不要把 key 暴露到前端代码
  2. 不要在日志里打印完整 key
  3. 多组织 / 多项目时显式写清上下文

很多所谓“认证问题”,最后不是 header 写错,而是环境和 project context 混掉了。

System Design

Core system design concepts and practical case studies

Learn the trade-offs and patterns that matter in technical interviews.

Open System Design →

Related Roadmaps