Die Isolierung von Claude Code begrenzt, was eine Sitzung auf dem Dateisystem lesen, schreiben und im Netzwerk erreichen kann. Dies ist besonders wichtig, wenn Sie Claude mit weniger Genehmigungseingaben arbeiten lassen, es unbeaufsichtigt ausführen oder es auf Code verweisen, dem Sie nicht vollständig vertrauen. Claude Code kann in mehreren Arten isolierter Umgebungen ausgeführt werden, von einer leichtgewichtigen Sandbox pro Befehl bis zu einer vollständig separaten virtuellen Maschine. Diese Seite behandelt, wie Sie:Documentation Index
Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
- Verfügbare Isolierungsansätze vergleichen, basierend darauf, was sie isolieren, was sie erfordern und wie viel Setup erforderlich ist
- Den Ansatz wählen, der zu Ihrem Ziel und Bedrohungsmodell passt
- Mit dem gewählten Ansatz beginnen, vom integrierten Bash-Sandbox bis zur dedizierten virtuellen Maschine
- Isolation für jeden Entwickler in Ihrer Organisation erzwingen
Für das umfassendere Sicherheitsmodell siehe Sicherheit. Für Agent SDK-Bereitstellungen siehe Sichere Bereitstellung.
Sandboxing-Ansätze vergleichen
Die ersten beiden Ansätze in der folgenden Tabelle werden auf dem Host-Betriebssystem ohne Container ausgeführt. Die übrigen platzieren Claude Code in einem Container oder einer virtuellen Maschine.| Ansatz | Was wird isoliert | Erfordert Docker | Setup-Aufwand |
|---|---|---|---|
| Sandboxed Bash tool | Bash-Befehle und ihre untergeordneten Prozesse | Nein | Minimal auf macOS; niedrig auf Linux und WSL2 |
| Sandbox runtime | Der gesamte Claude Code-Prozess, einschließlich Datei-Tools, MCP-Server und Hooks | Nein | Niedrig |
| Dev container | Vollständige Entwicklungsumgebung | Ja | Mittel |
| Custom container | Vollständige Entwicklungsumgebung | Ja | Mittel bis hoch |
| Virtual machine | Vollständiges Betriebssystem | Nein | Hoch |
| Claude Code on the web | Vollständiges Betriebssystem, gehostet von Anthropic | Nein | Keine; erfordert ein Claude-Abonnement und GitHub |
Wählen Sie einen Ansatz
Ordnen Sie Ihr Ziel einer Zeile unten zu und lesen Sie dann den folgenden Detailabschnitt.| Sie möchten | Beginnen Sie mit |
|---|---|
| Genehmigungseingaben während der täglichen Arbeit auf Ihrem eigenen Computer reduzieren | Das Sandboxed Bash tool, aktiviert mit /sandbox |
Claude unbeaufsichtigt mit --dangerously-skip-permissions oder Auto-Modus arbeiten lassen | Der vorkonfigurierte Dev Container, ein beliebiger Container oder VM, oder die Sandbox Runtime |
| MCP-Server und Hooks sowie Bash isolieren, ohne Docker | Die Sandbox Runtime |
| An einem nicht vertrauenswürdigen Repository arbeiten | Eine dedizierte virtuelle Maschine oder Claude Code on the web, wenn Sie ein Claude-Abonnement und ein verbundenes GitHub-Konto haben |
| Eine Sandbox-Umgebung über ein Team standardisieren | Der vorkonfigurierte Dev Container, kopiert in Ihr Repository |
| Claude Code von einem Gerät ohne lokales Setup verwenden | Claude Code on the web, das ein Claude-Abonnement und ein verbundenes GitHub-Konto erfordert |
| Isolation für jeden Entwickler in Ihrer Organisation erfordern | Isolation über eine Organisation erzwingen |
| Auf einem nativen Windows-Host arbeiten | Ein Container oder VM, oder führen Sie die Bash-Sandbox in WSL2 aus |
Wie Isolation mit Berechtigungsmodi zusammenhängt
Berechtigungsmodi entscheiden, ob ein Tool-Aufruf ausgeführt wird und ob Sie zuerst aufgefordert werden. Isolation beschränkt, was ein Befehl nach der Ausführung zugreifen kann. Die beiden arbeiten zusammen: Wenn ein Berechtigungsmodus Aktionen ohne Nachfrage ausführen lässt, begrenzt eine Isolierungsgrenze, was diese Aktionen erreichen können.--dangerously-skip-permissions entfernt die Überprüfung pro Aktion vollständig, sodass eine Isolierungsgrenze das einzige ist, das begrenzt, was Claude tun kann. Führen Sie es immer in einem Container, einer VM oder der Sandbox Runtime aus, damit Datei-Tools, MCP-Server und Hooks auch innerhalb der Grenze liegen.
Auto-Modus ersetzt die Eingabeaufforderung durch einen Klassifizierer, der Aktionen überprüft und solche blockiert, die über die Anfrage hinausgehen, auf nicht erkannte Infrastruktur abzielen oder von feindseligem Inhalt angetrieben zu sein scheinen, den Claude gelesen hat. Der Klassifizierer ist eine Kontrolle pro Aktion, keine Isolierungsgrenze, daher fügt eine Isolierungsgrenze immer noch Verteidigungstiefe für unbeaufsichtigte Läufe hinzu und ist nicht erforderlich, wie es für --dangerously-skip-permissions der Fall ist.
Das Sandboxed Bash tool allein beschränkt nur Bash, daher ist es nicht ausreichend für vollständig unbeaufsichtigte Läufe in beiden Modi. Sie können Ansätze schichten: Das Ausführen des Sandboxed Bash tool in einem Container oder VM gibt Ihnen OS-Ebenen-Befehlsbeschränkungen zusätzlich zur äußeren Umgebungsgrenze. Für die Interaktion der Bash-Sandbox selbst mit Berechtigungsregeln und Modi siehe Wie Sandboxing mit Berechtigungen und Berechtigungsmodi zusammenhängt.
Sandboxed Bash tool
Diese Option unterstützt nicht natives Windows. Verwenden Sie auf Windows-Hosts WSL2 oder einen der Container- oder VM-Ansätze unten.
/sandbox-Befehl. Der Sandboxing-Leitfaden behandelt die Genehmigungsmodi, die Standardgrenze und wie Sie sie erweitern oder einengen.
Die Sandbox pro Befehl deckt nicht alles ab, das in einer Sitzung ausgeführt wird:
- Andere integrierte Tools wie Read, Edit und WebFetch werden im Claude Code-Prozess ausgeführt und führen keinen beliebigen Code aus. Berechtigungsregeln für Pfad oder Domain kontrollieren sie stattdessen.
- MCP-Server und Hooks sind separate Prozesse, die unkontrolliert auf dem Host ausgeführt werden.
Sandbox Runtime
Das@anthropic-ai/sandbox-runtime-Paket umhüllt einen gesamten Prozess mit der gleichen Seatbelt- oder bubblewrap-Isolation, die die integrierte Bash-Sandbox verwendet. Das Ausführen von Claude Code durch sie beschränkt jedes Tool, jeden Hook und jeden MCP-Server in der Sitzung, nicht nur Bash. Die Runtime ist eine Beta-Forschungsvorschau, und ihr Konfigurationsformat kann sich ändern, wenn sich das Paket weiterentwickelt.
Die Runtime verweigert standardmäßig alle Schreib- und Netzwerkzugriffe, daher konfigurieren Sie sie vor dem Starten von Claude Code durch sie. In ~/.srt-settings.json oder einer Datei, die Sie mit --settings übergeben, erlauben Sie Schreibzugriff auf mindestens Ihr Projektverzeichnis und Claude Codes Konfigurationspfade ~/.claude und ~/.claude.json. Erlauben Sie die Netzwerk-Domains, die Ihre Sitzung benötigt, einschließlich api.anthropic.com oder des Endpunkts Ihres konfigurierten Anbieters. Siehe die Paket-README für das vollständige Konfigurationsschema.
Sobald die Einstellungsdatei vorhanden ist, starten Sie Claude Code mit npx und übergeben Sie claude als den zu umhüllenden Befehl:
Dev Container
Ein Dev Container führt Claude Code in einem Docker-Container aus, den VS Code oder ein kompatibler Editor verwaltet, mit Ihrem Projekt bereitgestellt. Sie können Ihren eigenen mit einem.devcontainer/-Verzeichnis in Ihrem Repository definieren.
Das claude-code-Repository veröffentlicht einen Beispiel-Dev-Container mit einer Standard-Deny-iptables-Firewall als Ausgangspunkt. Kopieren Sie ihn in Ihr Repository und passen Sie die Firewall-Allowlist, das Basis-Image und die angeheftete Claude Code-Version an Ihre Umgebung an. Da die Firewall nicht genehmigten Egress blockiert, unterstützt eine Konfiguration wie diese das Ausführen von Claude Code mit --dangerously-skip-permissions für unbeaufsichtigte Arbeit.
Custom Container
Sie können Claude Code in einem beliebigen Docker- oder OCI-Container-Image mit Ihren eigenen Netzwerkrichtlinien, bereitgestellten Volumes und seccomp-Profilen ausführen. Dies ist der häufigste Weg für Organisationen mit bestehender Container-Infrastruktur oder CI-Runnern. Mehrere verwaltete Sandbox- und Remote-Ausführungsdienste können den Container für Sie hosten. Die gleiche Checkliste gilt wie für jeden Container, den Sie betreiben: Überprüfen Sie, was beschreibbar bereitgestellt ist, welche Anmeldedaten und Token darin erreichbar sind, und welche Netzwerk-Egress-Richtlinie erlaubt ist. Sie können die integrierte Bash-Sandbox im Container schichten, um Befehlsbeschränkungen pro Befehl zu erhalten. Unprivilegierte Container benötigen die nested-sandbox-Einstellung, die in Sandboxing-Fehlerbehebung beschrieben ist.Virtual Machine
Eine dedizierte virtuelle Maschine bietet die stärkste Trennung mit ihrem eigenen Kernel und in Cloud- oder microVM-Bereitstellungen ihrer eigenen virtualisierten Hardware. Optionen umfassen Cloud-Instanzen, lokale Hypervisoren und microVMs wie Firecracker. Verwenden Sie diesen Ansatz, wenn Sie nicht vertrauenswürdigen Code evaluieren, wenn Ihre Sicherheitsrichtlinie Kernel-Ebenen-Trennung zwischen dem Agent und dem Host erfordert, oder wenn kein Host-Ebenen-Ansatz Ihre Compliance-Anforderungen erfüllt. Das Sandboxes-Feature von Docker Desktop bietet eine microVM mit ihrem eigenen Docker-Daemon und Workspace-Synchronisierung, die Claude Code auf Hosts ausführen kann, die bereits Docker Desktop haben.Claude Code on the web
Claude Code on the web führt jede Sitzung in einer isolierten, von Anthropic verwalteten virtuellen Maschine aus. Ein Netzwerk-Proxy erzwingt eine Standard-Allowlist, und ein separater Proxy hält Ihren GitHub-Token außerhalb der Sandbox, während er scoped Anmeldedaten für Repository-Zugriff darin ausstellt. Verwenden Sie diesen Ansatz, wenn Sie vollständige VM-Isolation ohne Bereitstellung von Infrastruktur selbst möchten, oder wenn Sie Aufgaben von einem Gerät delegieren, das keine lokale Entwicklungsumgebung hat. Es erfordert ein Claude-Abonnement und ein verbundenes GitHub-Konto, und Sitzungen klonen Ihr Repository von GitHub. Siehe Claude Code on the web für Planverfügbarkeit und GitHub-Authentifizierungsoptionen.Isolation über eine Organisation erzwingen
Einzelne Entwickler können sich für jeden der oben genannten Ansätze anmelden. Was eine Organisation erzwingen kann und mit welchen Tools hängt vom Ansatz ab:- Integrierte Bash-Sandbox: der einzige Ansatz, den Claude Code selbst erzwingt. Liefern Sie die
sandbox-Einstellungsschlüssel durch verwaltete Einstellungen, entweder als eine Datei, die von Ihrem MDM verwaltet wird, oder durch servergesteuerte Einstellungen auf Claude.ai. Siehe Sandboxing mit verwalteten Einstellungen erzwingen für die bereitzustellenden Schlüssel und wie Sie Entwickler davon abhalten, die Richtlinie zu erweitern. - Dev Container: Committen Sie den Beispiel-Dev-Container in Ihre Repositories, um die Umgebung über ein Team zu standardisieren. Dies ist eher eine Konvention als eine Erzwingungsgrenze, da Claude Code keinen Container erfordert. Wenn Entwickler Claude Code nicht außerhalb davon ausführen sollten, erzwingen Sie dies mit den Gerätemanagement- oder Software-Allowlisting-Tools Ihrer Organisation.
- Custom Container und VMs: Verteilen Sie Claude Code über das genehmigte Image und verwenden Sie die Gerätemanagement- oder Software-Allowlisting-Tools Ihrer Organisation, um die Installation außerhalb davon zu verhindern.
Siehe auch
Diese Seiten behandeln Konfiguration und Richtliniendetails für die oben genannten Ansätze.- Sandboxing: Konfigurieren Sie das integrierte Sandboxed Bash tool
- Dev Container: Der vorkonfigurierte Docker-Entwicklungs-Container
- Sicherheit: Das vollständige Claude Code-Sicherheitsmodell
- Sichere Bereitstellung: Isolierungsleitfaden für Agent SDK-Anwendungen
- Einstellungen: Alle Sandbox-Konfigurationsschlüssel, einschließlich verwalteter Einstellungsbereitstellung