OpenAI Codex 中文教程

访问令牌

使用 ChatGPT 工作区身份,让受信任自动化以非交互方式运行 Codex 本地。

Codex 访问令牌让受信任自动化可以用 ChatGPT 工作区身份运行 Codex 本地。当脚本、定时任务或 CI 运行器需要可重复、非交互的 Codex 访问时,可以使用它们。

访问令牌在 ChatGPT admin console 的访问令牌页面创建。它们绑定到创建令牌的 ChatGPT 用户和工作区;Codex 会把它们用作程序化本地工作流中的智能体身份。

访问令牌如何工作

当 Codex 需要在没有用户完成浏览器登录的情况下运行时,可以使用访问令牌。该令牌代表创建它的 ChatGPT 工作区用户,因此运行可以使用该用户的 Codex 访问权限,并出现在工作区治理数据中。

Codex 会在运行开始时检查令牌,并把该运行绑定到对应工作区身份。请像对待其他自动化密钥一样对待这个令牌:存放在密钥管理器中,避免写入日志,并定期轮换。

访问令牌适用于:

  • 从受信任自动化中运行的 codex exec 任务。
  • 需要可重复、非交互 Codex 运行的本地脚本。
  • 希望把用量关联到 ChatGPT 工作区用户,而不是 API 组织 key 的企业工作流。

需要避免的主要风险:

  • 密钥泄露: 任何持有令牌的人都可以以令牌创建者身份启动 Codex 运行。请把令牌存放在密钥管理器中,避免写入日志,并定期轮换。
  • 不受信任的运行器: 公开 CI、fork PR 或共享机器可能把令牌暴露给工作区外部人员。只在受信任运行器上使用访问令牌。
  • 共享身份: 把同一个人的令牌复用于无关团队,会让所有权和审计轨迹更难解释。请为具体工作流负责人创建令牌。
  • 过期凭据: 长期有效令牌可能在工作流变化后仍保持活跃。优先使用有限过期时间,并撤销不再使用的令牌。
  • 凭据类型错误: 访问令牌面向 Codex 本地工作流。一般 OpenAI API 调用请使用 Platform API keys。

启用访问令牌创建

在工作区设置中使用 Codex 本地(Codex Local)控制项,为允许的成员开启访问令牌创建能力。

ChatGPT 工作区 RBAC 设置中的访问令牌权限
  1. 打开工作区设置 > 设置与权限(Workspace Settings > Settings and Permissions)
  2. 在 Codex 本地(Codex Local)区域,确认 允许成员使用 Codex 本地(Allow members to use Codex Local) 已打开。
  3. 如果所有已允许成员都应该可以创建访问令牌,请打开 允许成员使用 Codex 访问令牌(Allow members to use Codex access tokens)
  4. 如果你通过自定义角色进行更小范围发布,只把访问令牌权限分配给确实需要创建令牌的组。

请把访问令牌创建权限限制给理解令牌会存放在哪里、哪段自动化会使用它以及如何轮换它的人员或服务负责人。

创建访问令牌

在访问令牌页面为令牌命名,并选择过期时间。

  1. 打开访问令牌
  2. 选择 创建(Create)
带有 Create 按钮的访问令牌页面
  1. 输入描述性名称,例如 release-cinightly-docs-check
创建访问令牌弹窗,包含名称和过期时间字段
  1. 选择过期时间。优先选择 7、30、60 或 90 天这类有限过期时间。如果选择 无过期时间(No expiration),请按固定计划轮换令牌。
  2. 选择 创建(Create)
  3. 立即复制生成的访问令牌。关闭弹窗后无法再次查看它。
  4. 把令牌存入密钥管理器或 CI 密钥存储。

最短自定义过期时间是一天。已撤销或已过期的令牌不能用于启动新的 Codex 运行。

在 Codex CLI 中使用访问令牌

对于临时自动化,可以把令牌存入 CODEX_ACCESS_TOKEN,然后正常运行 Codex:

export CODEX_ACCESS_TOKEN="<access-token>"
codex exec --json "review this repository and summarize the top risks"

如果需要持久本地登录,可以把令牌通过管道传给 codex login --with-access-token

printf '%s' "$CODEX_ACCESS_TOKEN" | codex login --with-access-token
codex exec "summarize the last release diff"

codex login --with-access-token 会在 Codex auth 存储中保存一个智能体身份凭据。如果你不想在机器上持久保存凭据,请改用 CODEX_ACCESS_TOKEN 环境变量。

轮换或撤销令牌

访问令牌的轮换方式和其他自动化密钥一样:

  1. 创建替换令牌。
  2. 更新运行器、调度器或密钥管理器中的密钥。
  3. 用新令牌跑一次冒烟测试。
  4. 访问令牌中撤销旧令牌。

在访问令牌页面,工作区所有者和管理员可以撤销任何工作区令牌。拥有访问令牌权限的成员只能撤销自己创建的令牌。

权限模型

访问令牌权限独立于一般 Codex 本地权限。成员可以拥有 Codex App、CLI 或 IDE 扩展的访问权限,但不一定被允许创建访问令牌。

能力 工作区所有者和管理员 拥有访问令牌权限的成员 没有访问令牌权限的成员
打开访问令牌 可以 可以 不可以
创建访问令牌 可以,为自己的 ChatGPT 工作区身份创建 可以,为自己的 ChatGPT 工作区身份创建 不可以
列出访问令牌 工作区列表,包括每个令牌的创建者 仅自己创建的令牌 不可以
从访问令牌页面撤销访问令牌 工作区内任意令牌 仅自己创建的令牌 无页面访问权限
授予或移除访问令牌权限 可以 不可以 不可以
管理其他 Codex 企业设置 可以,取决于管理员角色和 Codex 管理员权限 不可以,除非被单独授权 不可以

简而言之:工作区所有者和管理员在工作区层级管理访问。成员需要访问令牌权限才能创建和管理自己的令牌,但该权限不会授予管理员权限,也不会允许访问其他成员的令牌。

故障排查

访问令牌页面返回 404 或 forbidden(禁止访问)

请让工作区所有者或管理员确认 Codex 访问令牌已启用,并且你的角色包含访问令牌权限。

codex login --with-access-token 失败

确认你复制的是生成的访问令牌,而不是浏览器会话令牌或 Platform API key。同时确认该令牌没有过期或被撤销。

相关文档