Bedrock GovCloud 配置
配置 AWS GovCloud 中使用 Amazon Bedrock 的本地 Codex 工作流
本指南介绍在 AWS GovCloud 中以 API 模式运行 Codex 时的安全设置。授权敏感工作流之前,请先审核这些设置。
验证清单 · 功能参考 · Codex 配置参考
共同责任
AWS 与你的组织共同负责云部署的安全。请查阅 AWS 共同责任模型以及所选服务的文档,明确提供商的控制措施和你的责任。你的机构负责授权其系统使用这些服务。
在受支持的部署中,Codex 使用 AWS 身份验证,向已审核的 Amazon Bedrock 端点发送推理请求。ChatGPT 工作区要求和 RBAC 不适用于这条 API 模式路径。请配置 AWS 身份、服务访问权限,以及运行 Codex 的工作站。
工作站配置(包括 Codex TOML 策略文件)控制本地文件访问、命令执行、网络访问、插件、MCP 工具和浏览器功能。你负责保护工作站、凭证、仓库、本地记录,以及任何已启用的第三方服务。请为设备策略、网络控制、更新和部署验证指定负责人。
仅使用 AWS GovCloud 和这些设置,并不能证明完整工作流满足机构要求。请审核部署中实际使用的服务、模型、区域、目标地址和数据流,并在系统安全计划中记录客户方责任。
开始之前
确认当前 Codex 版本支持 GovCloud。
| 准备事项 | 所需条件 |
|---|---|
| AWS 访问 | 已批准的账户、IAM 身份和凭证机制;允许使用的模型、GovCloud 区域和端点。 |
| 部署包 | 受支持的桌面客户端和随附 app-server 版本、已审核的 Bedrock 要求策略、已批准的身份验证/存储/运行目标地址,以及回退说明。 |
| 设备管理 | 系统配置或 MDM 的管理权限,以及已审核的应用/设备网络策略和智能体命令网络策略。 |
1. 准备 AWS 访问
选择已批准的 AWS 账户和 IAM 身份,确保其能够访问所选模型和区域。通过组织批准的机制提供凭证。不要将凭证写入 TOML。
使用命名配置档案时,请保护其配置、凭证来源和凭证辅助程序,防止任务修改这些内容。
2. 部署设备要求
在启动应用或进行身份验证之前,通过系统配置或 MDM 部署已审核的 Bedrock requirements.toml。API 模式会话不会获得 ChatGPT 工作区要求或 RBAC。
请以下面的完整要求作为受支持 Bedrock 部署的基线。针对已批准的工作流,审核功能参考、本地技能和命令访问权限。
系统文件位置和 MDM 下发方式请参阅托管配置。保护托管策略,并按第 4 步在执行主机上验证实际生效的设置。
建议的 requirements.toml
此配置有意限制功能。除非组织实施了其他限制,否则建议 GovCloud 使用此配置。各项设置的详情请参阅配置参考。
最后的 [windows] 表仅适用于 Windows。请确认已批准的运行时支持 sandbox_private_desktop。
requirements.toml
allowed_login_methods = ["api"]
allowed_sandbox_modes = ["read-only", "workspace-write"]
allowed_approvals_reviewers = ["user"]
allowed_approval_policies = [
{ granular = { sandbox_approval = false, rules = true, mcp_elicitations = false, request_permissions = false, skill_approval = true } },
]
allowed_web_search_modes = ["disabled", "cached"]
allow_browser_and_computer_use = false
allow_appshots = false
allow_remote_control = false
allow_login_shell = false
allow_managed_hooks_only = true
check_for_update_on_startup = false
mcp_servers = {}
[feedback]
enabled = false
[features]
network_proxy = true
in_app_chat = false
in_app_dictation = false
in_app_browser = false
browser_use = false
browser_use_external = false
browser_use_full_cdp_access = false
computer_use = false
in_app_updates = false
image_generation = false
memories = false
chronicle = false
external_agent_memory_import = false
guardian_approval = false
guardianv2 = false
guardian_ext = false
apps = false
enable_mcp_apps = false
plugins = false
remote_plugin = false
plugin_sharing = false
recommended_plugins = false
skill_mcp_dependency_install = false
skill_search = false
workspace_dependencies = false
hooks = false
standalone_web_search = false
[experimental_network]
enabled = true
managed_allowed_domains_only = true
domains = {}
unix_sockets = {}
allow_upstream_proxy = false
dangerously_allow_non_loopback_proxy = false
dangerously_allow_all_unix_sockets = false
allow_local_binding = false
# Application destinations
[application.network]
enabled = true
[application.network.domains]
"bedrock-mantle.us-gov-west-1.api.aws" = "allow"
# OpenAI / ChatGPT, including auth and telemetry.
"api.openai.com" = "deny"
"chat.openai.com" = "deny"
"chatgpt.com" = "deny"
"ab.chatgpt.com" = "deny"
"platform.openai.com" = "deny"
"auth.openai.com" = "deny"
# FedRAMP OpenAI endpoints are also outside this Bedrock profile.
"gov.api.openai.com" = "deny"
"gov.chatgpt.com" = "deny"
"sdfedpreastus2.oaiusercontent.com" = "deny"
# Crash reporting and distribution.
"o33249.ingest.us.sentry.io" = "deny"
"persistent.oaistatic.com" = "deny"
"oaisidekickupdates.blob.core.windows.net" = "deny"
# Windows only
[windows]
allowed_sandbox_implementations = ["elevated"]
sandbox_private_desktop = true3. 配置提供商路由和网络控制
在 config.toml 或托管默认配置中设置提供商、模型、区域和端点,与 requirements.toml 分开管理。除非托管策略加以限制,否则用户可以更改提供商默认值。
建议的 config.toml
对于已确认位于 us-gov-west-1 的 Mantle 部署,请将模型 ID 和配置档案替换为已批准的值。如果已批准的端点或区域不同,请同时更新 URL、区域和网络策略。
这些默认值设置推理路由,与托管审批策略保持一致,并关闭可选的诊断和数据共享。用户可以在托管要求允许的范围内更改默认值。不要将 AWS 凭证写入 TOML 文件。最后的 [windows] 表仅适用于 Windows,必须与你已批准的运行时一致。
config.toml
model = "REPLACE_WITH_APPROVED_MODEL_ID"
model_provider = "amazon-bedrock"
forced_login_method = "api"
approval_policy = { granular = { sandbox_approval = false, rules = true, mcp_elicitations = false, request_permissions = false, skill_approval = true } }
approvals_reviewer = "user"
sandbox_mode = "workspace-write"
web_search = "cached"
allow_login_shell = false
check_for_update_on_startup = false
[model_providers.amazon-bedrock]
base_url = "https://bedrock-mantle.us-gov-west-1.api.aws/openai/v1"
wire_api = "responses"
requires_openai_auth = false
supports_websockets = false
supports_standalone_web_search = false
[model_providers.amazon-bedrock.aws]
region = "us-gov-west-1"
profile = "codex-il5"
[sandbox_workspace_write]
network_access = false
[features]
network_proxy = true
[analytics]
enabled = false
[feedback]
enabled = false
[otel]
exporter = "none"
trace_exporter = "none"
metrics_exporter = "none"
log_user_prompt = false
[memories]
generate_memories = false
use_memories = false
[skills.bundled]
enabled = false
[apps._default]
enabled = false
# Windows only
[windows]
sandbox = "elevated"即使 requires_openai_auth = false,仍然需要 AWS 身份验证。Bedrock Runtime 和使用 bearer token 的网关需要各自已批准的提供商和身份验证配置;不要复用此 Mantle URL 或签名服务。
应用网络控制
实施已审核的应用和设备网络策略,以及独立的智能体命令网络策略。覆盖推理、凭证获取与刷新、遥测、存储和更新。通过 Bedrock 路由推理,并不意味着桌面客户端的所有流量都只会发送到 AWS。
应用网络策略覆盖受支持的应用请求和随附 app-server 请求。它与智能体沙箱控制分开,也不是操作系统防火墙。原生更新程序流量、Git、SSH、外部应用、凭证辅助程序和子进程网络访问,都需要独立的控制措施。
示例在 us-gov-west-1 中选择缓存搜索。请查阅 AWS Bedrock 网页搜索文档,检查区域可用性;只有部署负责人批准该服务后,才能使用缓存搜索。否则,设置 web_search = "disabled"。
4. 验证部署
重启应用。在执行主机上确认实际生效的要求、AWS 身份、提供商、模型、区域和端点。
使用示例数据运行已批准的工作流。
确认所需的功能限制已经生效。测试用户设置冲突、凭证无效或过期,以及路由失败的情况;内容不得回退到未经批准的目标地址。
记录桌面客户端和 app-server 版本、实际生效的配置、结果和回退流程。扩大访问范围之前,先解决失败或受阻的检查。
常见问题排查
| 问题 | 检查事项 |
|---|---|
| 不支持 GovCloud 端点 | 向 OpenAI 确认确切的桌面客户端/app-server 版本、端点和模型。仅更改 URL 并不能证明支持该端点。 |
| 使用了错误的 AWS 身份 | 检查实际生效的凭证来源和命名配置档案。确认 Bedrock API key 是否优先于该配置档案。 |
| 功能限制未生效 | 重启后检查完整且实际生效的要求。仅限 API 的登录设置不会自动应用功能策略。 |
参考:Bedrock 功能限制
这些设置描述初始 Bedrock 部署配置档案。请应用受支持版本提供的完整策略,包括 AWS 网络控制。本地自动化和实时语音需要额外的控制措施:上面的基线没有设置 in_app_local_automation 和 realtime_conversation。请审核部署所需的这些限制。
以下值属于托管要求,而不是用户默认值。将某项功能设为 true,不会绕过账户、工作区、提供商或操作系统的限制。不指定某项要求时,仍会执行通常的配置和可用性检查。
| 功能 | 策略设置 | 此配置档案中的行为 |
|---|---|---|
| ChatGPT 对话和 Quick Chat(快速聊天) | [features] in_app_chat = false |
false 隐藏 ChatGPT 对话和 Quick Chat 界面。此设置不会停止已有的云端任务,也不会禁用 ChatGPT Voice。 |
| 本地自动化 | [features] in_app_local_automation = false |
false 阻止本地定时任务启动,重启后也一样。true 在其他条件支持时允许本地调度。云端调度由独立的控制措施管理。 |
| 听写、转写和实时语音 | in_app_dictation = false; realtime_conversation = false |
in_app_dictation 控制桌面应用中的语音转文字输入:false 禁用该功能,true 则在听写可用时允许使用。realtime_conversation 控制 Codex CLI 中的 /voice。将其设为 false 并不能全面阻止桌面客户端中的 ChatGPT Voice 或 app-server 语音会话。 |
| 应用内浏览器和浏览器自动化 | in_app_browser, browser_use, browser_use_external, browser_use_full_cdp_access = false |
in_app_browser 控制应用内可用的浏览器面板。browser_use 允许智能体浏览网页,browser_use_external 则扩展到已登录的浏览器会话。browser_use_full_cdp_access 允许完整的浏览器调试。各项设为 false 会阻止对应路径;设为 true 时仍需通过其他功能、站点和审批检查。 |
| 计算机控制、Appshots 和计算机历史记录 | computer_use = false;顶层 allow_appshots = false; chronicle = false |
computer_use = false 阻止原生应用控制;allow_appshots = false 阻止捕获窗口图像和文字。true 允许对应功能,但仍受其他控制措施约束。chronicle = false 用于停止收集计算机历史记录。 |
| 跨会话记忆 | memories = false; external_agent_memory_import = false |
memories = false 禁用跨聊天生成和使用本地记忆。true 允许两者,但仍受 memories.generate_memories 和 memories.use_memories 约束。external_agent_memory_import = false 还会阻止从其他编程智能体导入记忆,即使本地记忆已启用也一样。 |
| 图片生成 | image_generation = false |
false 禁用内置图片生成工具;true 在客户端、模型和提供商支持时使其可用。此开关不会禁用图片输入,也不会阻止访问已有图片文件;请在第 4 步验证这些工作流。 |
| 网页搜索 | 遵循已批准部署的网页搜索策略。 | cached 使用搜索缓存;disabled 移除网页搜索工具。live 允许实时网页访问,indexed 则通过搜索索引控制外部访问。上述要求只允许 cached 或 disabled。请在第 3 步确认提供商支持情况和已批准的目标地址。 |
| 应用、插件、MCP 和自动下载 | apps = false; plugins = false;显式空的 [mcp_servers] |
false 默认关闭应用和插件。空的 mcp_servers 允许列表会阻止所有已配置的 MCP server。请根据组织的具体要求和安全状况启用。 |
| 自动审批 | allowed_approvals_reviewers = ["user"]; guardian_approval = false; guardianv2 = false |
["user"] 将审批评审者限制为用户。允许 auto_review 和 Guardian 功能后,可在受支持时进行自动评审。评审者设置控制谁来评审请求,approval_policy 仍决定哪些操作需要审批。 |
| 设备远程控制 | 顶层 allow_remote_control = false |
false 阻止设备远程控制。true 或未指定此要求时,在受支持的情况下允许通常的远程控制设置;这两种值都不会自行建立连接。 |
其他部署控制
| 领域 | 必需的控制措施 |
|---|---|
| 云端和远程工作流 | 使云端执行和调度、SSH、共享、Library(资料库)持久化、托管的项目知识,以及通过网络传送的通知保持不可用。请分别强制实施这些限制;单个功能开关无法覆盖每个入口。 |
| 遥测 | 分别审核分析、反馈、OpenTelemetry、崩溃报告和后台流量。feedback.enabled = false 不会禁用所有遥测通道。 |
| 应用分发 | 对于由客户控制的应用更新分发,在支持时将 in_app_updates = false 设置在 [features] 下,然后重启。外部软件包、修补、撤销、回退和受支持的版本需另行管理。 |