Bedrock-GovCloud-Konfiguration
Konfigurieren Sie lokale Codex-Workflows mit Amazon Bedrock in AWS GovCloud
Dieser Leitfaden behandelt Sicherheitseinstellungen für den Betrieb von Codex mit AWS GovCloud im API-Modus. Prüfen Sie diese Einstellungen, bevor Sie sensible Workflows genehmigen.
Prüfcheckliste · Funktionsreferenz · Codex-Konfigurationsreferenz
Gemeinsame Verantwortung
AWS und Ihre Organisation teilen sich die Verantwortung für die Absicherung der Cloud-Bereitstellung. Prüfen Sie das AWS-Modell der gemeinsamen Verantwortung und die Dokumentation der ausgewählten Dienste, um die Schutzmaßnahmen des Anbieters und Ihre Zuständigkeiten zu ermitteln. Ihre Behörde ist dafür verantwortlich, die Nutzung dieser Dienste durch ihr System zu genehmigen.
Bei einer unterstützten Bereitstellung sendet Codex Inferenzanfragen unter Verwendung der AWS-Authentifizierung an den geprüften Amazon-Bedrock-Endpunkt. Anforderungen des ChatGPT-Workspace und RBAC gelten nicht für diesen Zugriffsweg im API-Modus. Konfigurieren Sie die AWS-Identität, den Dienstzugriff und den Arbeitsplatzrechner, auf dem Codex ausgeführt wird.
Die Konfiguration Ihres Arbeitsplatzrechners, einschließlich seiner Codex-TOML-Richtliniendateien, steuert den lokalen Dateizugriff, die Befehlsausführung, den Netzwerkzugriff, Plugins, MCP-Tools und Browserfunktionen. Sie sind für die Absicherung von Arbeitsplatzrechnern, Anmeldeinformationen, Repositorys, lokalen Aufzeichnungen und allen aktivierten Drittanbieterdiensten verantwortlich. Benennen Sie Verantwortliche für Geräterichtlinien, Netzwerkschutzmaßnahmen, Updates und die Validierung der Bereitstellung.
AWS GovCloud und diese Einstellungen allein belegen nicht, dass Ihr gesamter Workflow die Anforderungen Ihrer Behörde erfüllt. Prüfen Sie die konkreten Dienste, Modelle, Regionen, Ziele und Datenflüsse Ihrer Bereitstellung und dokumentieren Sie Ihre Kundenverantwortlichkeiten im Systemsicherheitsplan.
Bevor Sie beginnen
Bestätigen Sie die GovCloud-Unterstützung für Ihre Codex-Version.
| Vorbereitung | Was Sie benötigen |
|---|---|
| AWS-Zugriff | Genehmigtes Konto, IAM-Identität und Verfahren zur Bereitstellung von Anmeldeinformationen; zulässiges Modell, GovCloud-Region und Endpunkt. |
| Bereitstellungspaket | Unterstützte Desktop-Version und mitgelieferte app-server-Version, geprüfte Bedrock-Anforderungsrichtlinie, genehmigte Ziele für Authentifizierung, Speicherung und Betrieb sowie Rollback-Anweisungen. |
| Geräteverwaltung | Zugriff auf die Systemkonfiguration oder MDM mit geprüften Netzwerkrichtlinien für Anwendungen, Geräte und Agentenbefehle. |
1. AWS-Zugriff vorbereiten
Wählen Sie das genehmigte AWS-Konto und die IAM-Identität mit Zugriff auf das ausgewählte Modell und die ausgewählte Region aus. Stellen Sie Anmeldeinformationen über das von Ihrer Organisation genehmigte Verfahren bereit. Speichern Sie keine Anmeldeinformationen in TOML.
Schützen Sie bei einem benannten Profil dessen Konfiguration, die Quelle der Anmeldeinformationen und das Hilfsprogramm für Anmeldeinformationen vor Schreibzugriffen durch Aufgaben.
2. Geräteanforderungen bereitstellen
Stellen Sie die geprüfte Bedrock-Datei requirements.toml vor dem Start der App oder der Authentifizierung über die Systemkonfiguration oder MDM bereit. Sitzungen im API-Modus erhalten keine Anforderungen des ChatGPT-Workspace und kein RBAC.
Verwenden Sie die vollständigen Anforderungen unten als Grundlage für Ihre unterstützte Bedrock-Bereitstellung. Prüfen Sie die Funktionsreferenz, lokale skills und den Befehlszugriff für den genehmigten Workflow.
Befolgen Sie die Hinweise unter Verwaltete Konfiguration zu den Speicherorten der Systemdateien und zur Bereitstellung über MDM. Schützen Sie die verwaltete Richtlinie und überprüfen Sie ihre tatsächlich wirksamen Einstellungen auf dem Ausführungshost in Schritt 4.
Empfohlene requirements.toml
Diese Konfiguration schränkt Funktionen bewusst ein. Sie wird für GovCloud empfohlen, sofern Ihre Organisation keine anderen Einschränkungen durchsetzt. Einzelheiten zu den einzelnen Einstellungen finden Sie in der Konfigurationsreferenz.
Die abschließende Tabelle [windows] gilt nur für Windows. Bestätigen Sie die Unterstützung für sandbox_private_desktop in Ihrer genehmigten Laufzeitumgebung.
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. Anbieter-Routing und Netzwerkschutzmaßnahmen konfigurieren
Legen Sie Anbieter, Modell, Region und Endpunkt in config.toml oder in verwalteten Standardwerten fest, getrennt von requirements.toml. Benutzer können Anbieterstandardwerte ändern, sofern die verwaltete Richtlinie sie nicht einschränkt.
Empfohlene config.toml
Ersetzen Sie für eine bestätigte Mantle-Bereitstellung in us-gov-west-1 die Modell-ID und das Profil durch genehmigte Werte. Falls der genehmigte Endpunkt oder die Region abweicht, aktualisieren Sie URL, Region und Netzwerkrichtlinie gemeinsam.
Diese Standardwerte legen den Inferenzweg fest, entsprechen der verwalteten Genehmigungsrichtlinie und deaktivieren optionale Diagnosen und die Datenweitergabe. Benutzer können Standardwerte innerhalb der verwalteten Anforderungen ändern. Bewahren Sie AWS-Anmeldeinformationen außerhalb der TOML-Datei auf. Die abschließende Tabelle [windows] gilt nur für Windows und muss Ihrer genehmigten Laufzeitumgebung entsprechen.
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"Die AWS-Authentifizierung ist auch bei requires_openai_auth = false erforderlich. Bedrock Runtime und Bearer-Token-Gateways benötigen eine eigene genehmigte Anbieter- und Authentifizierungskonfiguration; verwenden Sie diese Mantle-URL oder diesen Signierdienst dafür nicht erneut.
Netzwerkschutzmaßnahmen anwenden
Wenden Sie die geprüften Netzwerkrichtlinien für Anwendungen und Geräte sowie die separate Richtlinie für Agentenbefehle an. Berücksichtigen Sie Inferenz, Beschaffung und Erneuerung von Anmeldeinformationen, Telemetrie, Speicherung und Updates. Wenn Inferenz über Bedrock geleitet wird, bedeutet das nicht, dass der gesamte Desktop-Datenverkehr ausschließlich über AWS läuft.
Die Anwendungsnetzwerkrichtlinie deckt unterstützte Anwendungsanfragen und Anfragen des mitgelieferten app-server ab. Sie ist von den Schutzmaßnahmen der Agenten-Sandbox getrennt und keine Betriebssystem-Firewall. Datenverkehr des nativen Aktualisierungsprogramms, Git, SSH, externe Apps, Hilfsprogramme für Anmeldeinformationen und Netzwerkzugriffe von Unterprozessen erfordern separate Schutzmaßnahmen.
Das Beispiel wählt in us-gov-west-1 die Suche im Cache aus. Prüfen Sie die regionale Verfügbarkeit in der Dokumentation zur AWS-Bedrock-Websuche und verwenden Sie die Suche im Cache nur, wenn der Bereitstellungsverantwortliche den Dienst genehmigt. Setzen Sie andernfalls web_search = "disabled".
4. Bereitstellung überprüfen
Starten Sie die App neu. Bestätigen Sie auf dem Ausführungshost die tatsächlich wirksamen Anforderungen, die AWS-Identität, den Anbieter, das Modell, die Region und den Endpunkt.
Führen Sie einen genehmigten Workflow mit Beispieldaten aus.
Bestätigen Sie, dass die erforderlichen Funktionseinschränkungen wirksam sind. Testen Sie widersprüchliche Benutzereinstellungen, ungültige oder abgelaufene Anmeldeinformationen und Routingfehler; Inhalte dürfen bei Fehlern nicht an ein nicht genehmigtes Ziel geleitet werden.
Dokumentieren Sie die Desktop- und app-server-Versionen, die tatsächlich wirksame Konfiguration, die Ergebnisse und das Rollback-Verfahren. Klären Sie fehlgeschlagene oder blockierte Prüfungen, bevor Sie den Zugriff erweitern.
Häufige Probleme beheben
| Problem | Was Sie prüfen sollten |
|---|---|
| GovCloud-Endpunkt wird nicht unterstützt | Bestätigen Sie die genaue Desktop-/app-server-Version, den Endpunkt und das Modell mit OpenAI. Eine Änderung der URL allein stellt keine Unterstützung sicher. |
| Falsche AWS-Identität wird verwendet | Prüfen Sie die tatsächlich verwendete Quelle der Anmeldeinformationen und das benannte Profil. Prüfen Sie, ob ein Bedrock API key Vorrang vor dem Profil hat. |
| Funktionseinschränkungen fehlen | Prüfen Sie nach dem Neustart die vollständigen, tatsächlich wirksamen Anforderungen. Die Einstellung für die ausschließliche API-Anmeldung wendet die Funktionsrichtlinie nicht an. |
Referenz: Bedrock-Funktionseinschränkungen
Diese Einstellungen beschreiben das anfängliche Bedrock-Bereitstellungsprofil. Wenden Sie die vollständige Richtlinie an, die für Ihre unterstützte Version bereitgestellt wurde, einschließlich der AWS-Netzwerkschutzmaßnahmen. Lokale Automatisierung und Echtzeit-Sprachkommunikation erfordern zusätzliche Schutzmaßnahmen: in_app_local_automation und realtime_conversation sind in der obigen Basiskonfiguration nicht festgelegt. Prüfen Sie diese Einschränkungen für Ihre Bereitstellung.
Die folgenden Werte sind verwaltete Anforderungen, keine Benutzerstandardwerte. Das Setzen einer Funktion auf true umgeht keine Einschränkungen des Kontos, des Workspace, des Anbieters oder des Betriebssystems. Wird eine Anforderung weggelassen, bleiben die normalen Konfigurations- und Verfügbarkeitsprüfungen bestehen.
| Funktion | Richtlinieneinstellung | Verhalten in diesem Profil |
|---|---|---|
| ChatGPT-Unterhaltungen und Quick Chat | [features] in_app_chat = false |
false blendet die Oberflächen für ChatGPT-Unterhaltungen und Quick Chat aus. Diese Einstellung beendet keine bestehenden Cloud-Aufgaben und deaktiviert ChatGPT Voice nicht. |
| Lokale Automatisierung | [features] in_app_local_automation = false |
false verhindert den Start lokal geplanter Aufgaben, auch nach einem Neustart. true erlaubt die lokale Zeitplanung, sofern sie ansonsten unterstützt wird. Cloud-Zeitpläne werden durch separate Schutzmaßnahmen geregelt. |
| Diktieren, Transkription und Echtzeit-Sprachkommunikation | in_app_dictation = false; realtime_conversation = false |
in_app_dictation steuert die Spracheingabe zur Textumwandlung in der Desktop-App: false deaktiviert sie, während true sie erlaubt, wenn die Diktierfunktion verfügbar ist. realtime_conversation steuert /voice in Codex CLI. Das Setzen auf false bewirkt keine pauschale Sperre von ChatGPT Voice auf dem Desktop oder von app-server-Sprachsitzungen. |
| In-App-Browser und Browserautomatisierung | in_app_browser, browser_use, browser_use_external, browser_use_full_cdp_access = false |
in_app_browser steuert den innerhalb der App verfügbaren Browserbereich. browser_use ermöglicht dem Agenten das Browsen und browser_use_external erweitert dies auf angemeldete Browsersitzungen. browser_use_full_cdp_access erlaubt vollständiges Browser-Debugging. Wird jede Einstellung auf false gesetzt, wird der jeweilige Zugriffsweg blockiert; true erfordert weiterhin die übrigen Funktions-, Website- und Genehmigungsprüfungen. |
| Computersteuerung, Appshots und Computer History | computer_use = false; auf oberster Ebene allow_appshots = false; chronicle = false |
computer_use = false blockiert die Steuerung nativer Apps, allow_appshots = false blockiert die Erfassung von Fensterbildern und Text. true erlaubt die jeweilige Funktion unter Beachtung ihrer übrigen Schutzmaßnahmen. chronicle = false dient dazu, die Datenerfassung durch Computer History zu stoppen. |
| Sitzungsübergreifendes Gedächtnis | memories = false; external_agent_memory_import = false |
memories = false deaktiviert das Erstellen und Verwenden lokaler Erinnerungen über Chats hinweg. true erlaubt beides unter Beachtung von memories.generate_memories und memories.use_memories. external_agent_memory_import = false blockiert auch den Import von Erinnerungen anderer Coding-Agenten, selbst wenn lokale Erinnerungen aktiviert sind. |
| Bildgenerierung | image_generation = false |
false deaktiviert das integrierte Bildgenerierungstool; true macht es verfügbar, wenn Client, Modell und Anbieter es unterstützen. Dieser Schalter deaktiviert weder Bildeingaben noch den Zugriff auf vorhandene Bilddateien; validieren Sie diese Workflows in Schritt 4. |
| Websuche | Befolgen Sie die Websuchrichtlinie der genehmigten Bereitstellung. | cached verwendet den Suchcache; disabled entfernt das Websuchtool. live erlaubt direkten Webzugriff, während indexed den externen Zugriff über den Suchindex steuert. Die obigen Anforderungen erlauben nur cached oder disabled. Bestätigen Sie die Anbieterunterstützung und die genehmigten Ziele in Schritt 3. |
| Apps, Plugins, MCP und automatische Downloads | apps = false; plugins = false; explizit leere [mcp_servers] |
false deaktiviert Apps und Plugins standardmäßig. Eine leere mcp_servers-Zulassungsliste blockiert alle konfigurierten MCP servers. Aktivieren Sie diese Funktionen entsprechend den organisationsspezifischen Anforderungen und dem Sicherheitskonzept. |
| Automatische Genehmigung | allowed_approvals_reviewers = ["user"]; guardian_approval = false; guardianv2 = false |
["user"] beschränkt die Genehmigungsprüfung auf den Benutzer. Die Zulassung von auto_review und der Guardian-Funktionen würde eine automatische Prüfung ermöglichen, sofern diese unterstützt wird. Die Prüfer-Einstellung steuert, wer Anfragen prüft, und approval_policy bestimmt weiterhin, welche Aktionen eine Genehmigung erfordern. |
| Gerätefernsteuerung | auf oberster Ebene allow_remote_control = false |
false blockiert die Gerätefernsteuerung. true oder eine nicht festgelegte Anforderung erlaubt die normale Einrichtung der Fernsteuerung, sofern diese unterstützt wird; keiner dieser Werte stellt allein eine Verbindung her. |
Zusätzliche Schutzmaßnahmen für die Bereitstellung
| Bereich | Erforderliche Schutzmaßnahme |
|---|---|
| Cloud- und Remote-Workflows | Halten Sie Cloud-Ausführung und Cloud-Zeitpläne, SSH, Freigaben, dauerhafte Speicherung in Library, gehostetes Projektwissen und über das Netzwerk zugestellte Benachrichtigungen deaktiviert. Setzen Sie dies separat durch; einzelne Funktionsschalter decken nicht jeden Zugang ab. |
| Telemetrie | Prüfen Sie Analysen, Feedback, OpenTelemetry, Absturzberichte und Hintergrunddatenverkehr unabhängig voneinander. feedback.enabled = false deaktiviert nicht jeden Telemetriekanal. |
| App-Verteilung | Für eine kundenseitig gesteuerte Verteilung von App-Updates setzen Sie in_app_updates = false unter [features], sofern unterstützt, und starten Sie anschließend neu. Verwalten Sie externe Pakete, Patches, Widerrufe, Rollbacks und unterstützte Versionen separat. |