通过 Amazon Bedrock 使用 ChatGPT Work 和 Codex:配置 AWS 权限并验证

通过 Amazon Bedrock 使用 ChatGPT Work 和 Codex:配置 AWS 权限并验证

如果企业已经在 AWS 上管理模型,可以先试用通过 Amazon Bedrock 调用 OpenAI 模型的本地 ChatGPT Work 或 Codex。经过一次准备会议,团队就能确定请求路线、配置测试电脑并核验结果。需要具备 AWS 权限、受支持的区域和模型,以及 ChatGPT 桌面应用或 Codex CLI。企业内部审批可能需要更多时间。

这是一项本地客户端配置,不会把整个网页版 ChatGPT Enterprise 迁移到 AWS。根据 OpenAI 的 Amazon Bedrock 指南,客户端使用 AWS 身份验证向 Bedrock 发送模型请求,OpenAI 托管的 Responses API 不在这条模型请求路径上。其他功能和连接应分别检查。

如果还在确定试点团队、负责人和成功标准,可以先读小团队试点 ChatGPT Enterprise 的方法。本文从下一步技术工作开始:让一位获授权的人员验证预定的 Bedrock 路线,再决定是否扩大范围。

🧰 准备工作

请 AWS 管理员确认账户、区域、模型、权限和费用,请设备管理员核对本地配置,再由业务负责人挑选一项结果可验证的任务。记录谁批准访问权限,谁验收结果。首次测试使用不含客户数据的临时文件夹。

AWS 管理员必须确认所选模型已在具体账户和区域中开放,相应身份也有权调用模型或推理配置文件。通用模型清单不能证明你的账户已有权限。OpenAI 提醒,部分模型还有单独的 IAM 要求。例如,通过 Runtime 使用 GPT-6 Sol 时,账户的默认项目还需要 bedrock:InvokeModel 权限。

准备 Codex CLI 或 ChatGPT 桌面应用、修改 ~/.codex/config.toml 的权限,以及 Bedrock API 密钥或 AWS SDK 凭证链,例如 SSO 配置文件。对于这个提供方,OPENAI_API_KEY 和 ChatGPT 登录都不能代替 Bedrock 凭证。如果企业已有模型网关,请先阅读 OpenAI 的网关连接指南,那是另一条配置路线。

🪜 分步设置

1. 确定请求路线和数据边界

先问管理员:请求必须留在单个区域、某个地理范围,还是可以跨区域处理?Bedrock Runtime 使用推理配置文件进行 Global 或 Geo 跨区域推理。Bedrock Mantle 使用模型 ID 在区域内推理。Global 可能把处理路由到受支持的商业区域,Geo 则限制在配置文件指定的地理范围内。OpenAI 建议新配置优先使用 Runtime。如果工作必须使用托管网页搜索,则应考虑 Mantle,因为 Runtime 不提供此功能。

记录 AWS 账户、源区域、路线、模型或配置文件 ID、认证方式、审批人以及允许使用的数据类型。不要把密钥写入记录。

2. 配对提供方和模型

在测试电脑上修改 ~/.codex/config.toml。下面用 GPT-6 Sol 的 Global 配置文件演示 Runtime 语法,并不意味着你的账户已有权限。请按 AWS 管理员确认的结果,同时替换提供方和模型:

model_provider = "amazon-bedrock-runtime"
model = "global.openai.gpt-6-sol"
web_search = "disabled"

如果政策要求在单一区域处理,而且该区域提供所需模型,可选择 Mantle。OpenAI 列出的模型 ID 包括 openai.gpt-6-sol,但管理员仍需确认区域和权限:

model_provider = "amazon-bedrock"
model = "openai.gpt-6-sol"
web_search = "cached"

需要托管网页搜索时,web_search = "cached" 是 Mantle 的配置方式,并不保证每个区域都能使用。amazon-bedrock 对应 Mantle,amazon-bedrock-runtime 对应 Runtime。切换端点时,要一起修改提供方和模型或配置文件 ID。Codex 选择器中显示某个模型,也不代表 AWS 已授予调用权限。

3. 选择一种获批准的 AWS 认证方式

第一种方式是 Bedrock API 密钥。OpenAI 要求使用密钥时明确指定区域。把密钥放在客户端可读取的环境中,不要写入 config.toml、聊天内容或代码仓库:

export AWS_BEARER_TOKEN_BEDROCK="[管理员提供的Bedrock密钥]"
export AWS_REGION="[获批准的区域]"

第二种方式是 AWS SDK 凭证链。以下示例假设管理员已建立名为 codex-bedrock 的 SSO 配置文件:

aws sso login --profile codex-bedrock
export AWS_PROFILE=codex-bedrock
aws sts get-caller-identity --profile codex-bedrock

最后一条命令只能核实 AWS 身份,不能证明有权调用模型。客户端会先检查 Bedrock API 密钥,再检查 AWS SDK 凭证链。如果本来想使用 SSO,但环境里仍有旧的 AWS_BEARER_TOKEN_BEDROCK,客户端可能会选中旧密钥。排查 SSO 前先检查这个变量。

桌面应用和 IDE 扩展有时不会继承 shell 的环境变量。此时按 OpenAI 的说明,把必要的值写入 ~/.codex/.env,Windows 上为 %USERPROFILE%\.codex\.env,然后重启应用。如果文件含有密钥,应保护其访问权限,不要通过邮件传送或提交到 Git。

4. 先核实路线,再测试任务

在 Codex CLI 中打开 /status,查看实际生效的提供方和模型。Runtime 应显示 amazon-bedrock-runtime,Mantle 应显示 amazon-bedrock。重启 ChatGPT 桌面应用后,选择 Work 或 Codex 并建立新任务。在 IDE 中也开启新会话。按 OpenAI 指南发送简短测试:

Reply with exactly: bedrock-ok

得到 bedrock-ok 只能证明收到回复,不能单独证明请求经过 AWS。还要对照 /status、模型、区域和 AWS 身份。接着用一个只读的临时文件夹,请客户端总结样本文件,测试一次后续提问,并检查超出范围的访问是否被阻止。如果要让 Codex 修改代码,请参考团队限制 Codex 权限的方法。初次接触者可以先了解什么是 Vibe coding。

下面是一条可按需修改的测试指令:

只读取[测试文件夹]中的文件。总结三个要点,并为每个要点注明来源文件名。不要修改文件、访问网络或使用其他文件夹。如果资料不足,请明确说明缺少什么。

记录测试人员、提供方、模型或配置文件、区域、权限测试结果、错误和验收人。记录中不要包含密钥或敏感内容。失败时依次检查模型 ID、提供方与端点的对应关系、区域、密钥有效期、SSO 身份、调用权限以及桌面的环境变量。不要仅为了通过测试就扩大整个团队的 IAM 权限。

5. 决定扩大还是停止

AWS 管理员确认费用、配额和服务日志。Codex 管理员确认本地配置和文件边界。业务负责人验收实际产出。三方都有证据后,按团队逐步扩大。更改区域、模型、路线或认证方式后重新测试。如果使用网关,请参阅 OpenAI 的 Bedrock through LiteLLM 指南:网关持有 Bedrock 凭证,用户电脑则使用网关凭证。

✅ 示例结果

假设某内部团队选择获批准的区域、codex-bedrock SSO 配置文件,以及具有调用权限的 Runtime 推理配置文件。管理员核实 AWS 身份,工程师在 /status 中看到预期的提供方,简短测试返回 bedrock-ok,Codex 随后总结只读文件夹中的三个样本文件。尝试读取范围外文件夹被阻止。经理确认摘要正确标注文件名,且不含客户数据。这只是示例测试记录,不是任何真实企业已经测得的结果。

如果简短测试成功,但读取文件失败,原因可能是本机文件权限或沙箱,而非 Bedrock。如果文件可读但模型没有回复,则检查模型路线和 AWS 权限。这样可以更快找到负责处理问题的人。

💡 提高试点可靠性的建议

  • 测试应被阻止的操作。 如果超出文件夹或政策范围的任务也能执行,暂时不要扩大访问。
  • 重新核对官方资料。 模型、区域和功能会变化。部署时查阅 OpenAI 的 Bedrock 文档。

⚠️ 需要了解的限制

OpenAI 将此设置用于本地 ChatGPT Work 和 Codex。它不会让网页版 ChatGPT Work 或 Codex cloud 通过 Bedrock 运行。Fast Mode、图像生成和编辑、语音听写以及一些 OpenAI 云端功能不适用于这条路线。Runtime 也没有托管网页搜索。区域受限功能还需查各自文档。不要假设这条路线自动继承 ChatGPT Enterprise 的 RBAC、保留期限或数据驻留设置:OpenAI 的认证指南区分了 ChatGPT 登录和其他提供方路线。管理员必须核实实际生效的 AWS、设备和连接政策。

OpenAI Support 可以协助排查 ChatGPT 与 Codex 客户端的配置和行为。IAM、模型访问、配额、账单、区域和 Bedrock 服务日志由 AWS 管理员或 AWS Support 处理。MCP、插件和其他数据源使用各自的连接方式。选择 Bedrock 不会自动把它们都纳入同一个安全边界。

❓ 常见问题

使用这条 Bedrock 路线必须购买或启用 ChatGPT Enterprise 吗? Bedrock 文档描述的是本地客户端使用 AWS 认证,对该提供方不用 ChatGPT 登录或 OPENAI_API_KEY。企业仍需确认应用访问和软件管理政策。Enterprise 席位不等于 AWS 权限。

SSO 登录成功后,为什么 Codex 仍提示权限错误? 先检查 AWS_BEARER_TOKEN_BEDROCK,因为密钥的优先级高于 AWS profile。再用 aws sts get-caller-identity 核实身份,同时检查区域、模型或配置文件 ID 和调用权限。STS 命令不能证明 Bedrock 调用权限。

应该选 Runtime 还是 Mantle? Runtime 是新配置的推荐选择,使用 Global 或 Geo 推理配置文件,但没有托管网页搜索。Mantle 使用模型 ID 在区域内推理,工作需要托管网页搜索时可以考虑。两者都取决于区域可用性和 AWS 权限。

收到 bedrock-ok 就能证明请求经过 AWS 吗? 不能。还要核实应用中的提供方、模型或配置文件、AWS 身份与权限,并请 AWS 管理员复核。回复本身不显示请求路线。

一台电脑测试成功后能立即对全公司开放吗? 不宜。先用获批准的真实任务测试产出、被阻止的行为、费用、日志和权限撤销。模型、区域、路线或认证方式变更后,都应重新测试。

官方来源:Amazon Bedrock、Connect to a gateway、Bedrock through LiteLLM 和 Authentication,OpenAI Learn,核对日期:2026 年 10 月 5 日。

#ChatGPTWork #Codex #AmazonBedrock #企业AI

更多文章