Administration

访问令牌

访问令牌应按最小权限、轮换和审计策略管理。

Codex access tokens are ChatGPT access tokens scoped to Codex permissions that let trusted automation run Codex local with a ChatGPT workspace identity. Use them when a script, scheduled job, or CI runner needs repeatable, non-interactive Codex access.

Codex access tokens are currently supported for ChatGPT Business and Enterprise workspaces.

访问令牌 是在 ChatGPT 管理控制台的 访问令牌 中创建的。它们与创建它们的 ChatGPT 用户和工作区相关联,Codex 将它们用作编程本地工作流程的代理身份。

如果平台 API 密钥适用于您的自动化,请继续使用 API 密钥身份验证。当工作流特别需要 ChatGPT 工作区访问权限、ChatGPT-managed Codex 权利或企业工作区控件时,请使用 Codex 访问令牌。

需要从您自己的系统触发已发布的 ChatGPT 工作区代理?请改用工作区代理 API 的工作区代理访问令牌。 Codex 访问令牌对 Codex 本地工作流程进行身份验证;它们不验证工作区代理触发调用。请参阅 使用工作区代理访问令牌进行身份验证

访问令牌如何工作

当 Codex 需要在用户未完成浏览器 sign-in 的情况下运行时,请使用访问令牌。该令牌代表创建它的 ChatGPT 工作区用户,因此运行可以使用该用户的 Codex 访问权限并显示在工作区治理数据中。

Codex checks the token when a run starts and ties the run to that workspace identity. Treat the token like any other automation secret: store it in a secret manager, keep it out of logs, and rotate it regularly.

将访问令牌用于:

codex exec jobs that run from trusted automation.

需要可重复运行的本地脚本,non-interactive Codex。

使用情况应与 ChatGPT 工作区用户而不是 API 组织密钥关联的企业工作流程。

应避免的主要风险:

泄露秘密:任何拥有该令牌的人都可以作为令牌创建者启动 Codex 运行。将令牌存储在秘密管理器中,使它们远离日志,并定期轮换它们。

不受信任的运行者:公共 CI、分叉拉取请求或共享计算机可能会将令牌暴露给工作区之外的人员。仅在受信任的运行者上使用访问令牌。

共享身份:一个人的令牌在不相关的团队中重复使用,使得所有权和审计跟踪更难以解释。为特定工作流程所有者创建令牌。

过时的凭证:long-lived 令牌在工作流程更改后可以保持活动状态。优先选择有限的过期时间并撤销不再使用的令牌。

错误的凭证类型:Codex 访问令牌用于 Codex 本地工作流程。使用工作区代理访问令牌触发已发布的 ChatGPT 工作区代理,并使用平台 API 密钥进行常规 OpenAI API 调用。

启用访问令牌创建

使用工作区设置中的访问令牌权限为允许的成员启用访问令牌创建。

ChatGPT 工作区 RBAC 设置中的访问令牌访问权限

在“访问令牌”部分中,如果所有允许的成员都应该能够创建访问令牌,请启用“允许用户创建访问令牌”。

如果成员需要将这些令牌与 Codex app、CLI 或 IDE 扩展一起使用,请确保在 Codex 本地部分中也打开允许成员使用 Codex 本地。

将访问令牌的创建仅限于了解令牌存储位置、哪个自动化将使用它以及如何轮换的人员或服务所有者。

设置访问令牌过期限制

工作区所有者和管理员可以设置成员在创建 Codex 访问令牌时可以选择的最长过期时间。转至 工作区设置 > 权限和角色 ,然后在 Codex 本地部分中设置访问令牌过期限制。

ChatGPT 工作区权限设置中的访问令牌过期限制

该限制适用于新的访问令牌。现有令牌保持其当前有效期。

创建访问令牌

使用“ 访问令牌 ”页面命名令牌并选择其过期时间。

使用“创建”按钮访问令牌页面
创建包含名称和过期字段的访问令牌模式

转到 访问令牌

选择创建。

输入描述性名称,例如 release-ci 或 nightly-docs-check。

选择一个到期时间。优先选择有限的到期日,例如 7、30、60 或 90 天。如果您选择无过期,请定期轮换令牌。

选择创建。

立即复制生成的访问令牌。关闭模态框后您将无法再次查看它。

将令牌存储在您的秘密管理器或 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 登录 --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 stores an agent identity credential in Codex auth storage. If you prefer not to persist credentials on the machine, use the CODEX_ACCESS_TOKEN environment variable instead.

轮换或撤销令牌

轮换 访问令牌 的方式与轮换其他自动化机密的方式相同:

创建替换令牌。

更新运行程序、调度程序或秘密管理器中的秘密。

使用新令牌运行冒烟测试。

访问令牌 中撤销旧令牌。

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

权限模型

访问令牌 创建由工作区的 访问令牌 权限控制,该权限与常规 Codex 本地权限分开。成员可以访问 Codex app、CLI 或 IDE 扩展,但不允许创建 访问令牌

能力工作区所有者和管理员具有 访问令牌 权限的成员没有 访问令牌 权限的成员 开放 访问令牌 是的是的否 创建 访问令牌 是的,用于自己的 ChatGPT 工作区身份是的,用于自己的 ChatGPT 工作区身份没有列出 访问令牌 工作区列表,包括每个令牌的创建者只有他们创建的代币否 从“ 访问令牌 ”页面撤消 访问令牌 工作区中的任何令牌只有他们创建的代币无页面访问授予或删除 访问令牌 权限是的没有否 管理其他 Codex 企业设置是的,基于管理员角色和 Codex 管理员权限否,除非单独授予

简而言之:工作区所有者和管理员管理工作区级别的访问权限。成员需要访问令牌权限来创建和管理自己的令牌,但该权限不会授予管理员权限或对其他成员令牌的访问权限。

故障排除

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

请工作区所有者或管理员确认您的角色包括允许用户创建访问令牌,并且如果您计划将令牌与 Codex 一起使用,则允许成员使用 Codex 本地已启用。

codex login --with-access-token fails

确认您复制的是生成的访问令牌,而不是浏览器会话令牌或平台 API 密钥。还要确认令牌尚未过期或被撤销。

站内延伸阅读