11Claude Code 可以在多種隔離環境中執行,範圍從輕量級的每個命令沙箱到完全獨立的虛擬機。本頁涵蓋如何比較它們隔離的內容和所需條件,幫助您為威脅模型選擇一個,並展示如何在整個組織中強制執行該選擇。11Claude Code 可以在多種隔離環境中執行,範圍從輕量級的每個命令沙箱到完全獨立的虛擬機。本頁涵蓋如何比較它們隔離的內容和所需條件,幫助您為威脅模型選擇一個,並展示如何在整個組織中強制執行該選擇。
12 12
13<Info>13<Info>
14 有關更廣泛的安全模型,請參閱 [Security](/zh-TW/security)。有關 Agent SDK 部署,請參閱 [Secure deployment](/zh-TW/agent-sdk/secure-deployment)。14 有關更廣泛的安全模型,請參閱 [Security](/docs/zh-TW/security)。有關 Agent SDK 部署,請參閱 [Secure deployment](/docs/zh-TW/agent-sdk/secure-deployment)。
15</Info>15</Info>
16 16
17<h2 id="compare-sandboxing-approaches">17<h2 id="compare-sandboxing-approaches">
29| [Virtual machine](#virtual-machine) | 完整作業系統 | 否 | 高 |29| [Virtual machine](#virtual-machine) | 完整作業系統 | 否 | 高 |
30| [Claude Code on the web](#claude-code-on-the-web) | 完整作業系統,由 Anthropic 託管 | 否 | 無;需要 Claude 訂閱和 GitHub |30| [Claude Code on the web](#claude-code-on-the-web) | 完整作業系統,由 Anthropic 託管 | 否 | 無;需要 Claude 訂閱和 GitHub |
31 31
32[Sandboxed Bash tool](/zh-TW/sandboxing) 內建於 Claude Code 中,僅限制 Bash 命令。內建檔案工具、MCP 伺服器和 hooks 仍直接在您的主機上執行。表中的所有其他方法都將整個 Claude Code 進程放在隔離邊界內,因此檔案工具、MCP 伺服器和 hooks 也受到限制。32[Sandboxed Bash tool](/docs/zh-TW/sandboxing) 內建於 Claude Code 中,僅限制 Bash 命令。內建檔案工具、MCP 伺服器和 hooks 仍直接在您的主機上執行。表中的所有其他方法都將整個 Claude Code 進程放在隔離邊界內,因此檔案工具、MCP 伺服器和 hooks 也受到限制。
33 33
34<Warning>34<Warning>
35 沙箱隔離可減少違規的影響,但不能消除風險。任何允許網路出站的方法仍然可能洩露代理可以讀取的資料,任何以可寫方式掛載您的專案目錄的方法仍然可以修改該程式碼。在依賴沙箱作為硬控制之前,請查看 [security limitations](/zh-TW/sandboxing#security-limitations)。35 沙箱隔離可減少違規的影響,但不能消除風險。任何允許網路出站的方法仍然可能洩露代理可以讀取的資料,任何以可寫方式掛載您的專案目錄的方法仍然可以修改該程式碼。在依賴沙箱作為硬控制之前,請查看 [security limitations](/docs/zh-TW/sandboxing#security-limitations)。
36 36
37 隔離也不會改變發送到模型的內容。您的提示和 Claude 讀取的檔案無論是否使用沙箱,都會傳輸到 Anthropic API 或您配置的提供者。有關 Claude Code 發送的內容以及如何減少它,請參閱 [Data usage](/zh-TW/data-usage)。37 隔離也不會改變發送到模型的內容。您的提示和 Claude 讀取的檔案無論是否使用沙箱,都會傳輸到 Anthropic API 或您配置的提供者。有關 Claude Code 發送的內容以及如何減少它,請參閱 [Data usage](/docs/zh-TW/data-usage)。
38</Warning>38</Warning>
39 39
40<h2 id="choose-an-approach">40<h2 id="choose-an-approach">
41 選擇一種方法41 選擇一個方法
42</h2>42</h2>
43 43
44將您的目標與下面的一行相匹配,然後閱讀隨後的詳細部分。44將您的目標與下方的一列相符,然後閱讀隨後的詳細部分。
45 45
46| 您想要 | 開始使用 |46| 您想要 | 開始使用 |
47| :-------------------------------------------------------- | :---------------------------------------------------------------------------------------------- |47| :-------------------------------------------------------- | :------------------------------------------------------------------------------------------------------ |
48| 在您自己的機器上減少日常工作中的權限提示 | [sandboxed Bash tool](/zh-TW/sandboxing),使用 `/sandbox` 啟用 |48| 在您自己的機器上減少日常工作中的權限提示 | [沙箱化 Bash 工具](/docs/zh-TW/sandboxing),使用 `/sandbox` 設定 |
49| 讓 Claude 使用 `--dangerously-skip-permissions` 或自動模式無人值守地工作 | 預配置的 [dev container](/zh-TW/devcontainer)、任何容器或虛擬機,或 [sandbox runtime](#sandbox-runtime) |49| 讓 Claude 使用 `--dangerously-skip-permissions` 或自動模式無人值守地工作 | 預先設定的 [dev container](/docs/zh-TW/devcontainer)、任何容器或虛擬機,或 [沙箱執行時](#sandbox-runtime) |
50| 隔離 MCP 伺服器和 hooks 以及 Bash,不使用 Docker | sandbox runtime |50| 隔離 MCP 伺服器和 hooks 以及 Bash,無需 Docker | 沙箱執行時 |
51| 在不受信任的儲存庫上工作 | 專用虛擬機,或如果您有 Claude 訂閱和連接的 GitHub 帳戶,則使用 [Claude Code on the web](/zh-TW/claude-code-on-the-web) |51| 在不受信任的儲存庫上工作 | 專用虛擬機,或如果您有 Claude 訂閱,可使用 [Claude Code on the web](/docs/zh-TW/claude-code-on-the-web);GitHub 僅在您從網頁介面啟動時才需要 |
52| 在整個團隊中標準化沙箱環境 | 預配置的 [dev container](/zh-TW/devcontainer),複製到您的儲存庫中 |52| 在整個團隊中標準化沙箱化環境 | 預先設定的 [dev container](/docs/zh-TW/devcontainer),複製到您的儲存庫中 |
53| 從沒有本地設定的設備使用 Claude Code | [Claude Code on the web](/zh-TW/claude-code-on-the-web),需要 Claude 訂閱和連接的 GitHub 帳戶 |53| 從沒有本地設定的裝置使用 Claude Code | [Claude Code on the web](/docs/zh-TW/claude-code-on-the-web),需要 Claude 訂閱和已連接的 GitHub 帳戶 |
54| 要求為組織中的每個開發人員強制執行隔離 | [在整個組織中強制執行隔離](#enforce-isolation-across-an-organization) |54| 為您組織中的每位開發人員要求隔離 | [在整個組織中強制隔離](#enforce-isolation-across-an-organization) |
55| 在原生 Windows 主機上工作 | 容器或虛擬機,或在 WSL2 內執行 Bash 沙箱 |55| 在原生 Windows 主機上工作 | 容器或虛擬機,或在 WSL2 內執行 Bash 沙箱 |
56 56
57<h3 id="how-isolation-relates-to-permission-modes">57<h3 id="how-isolation-relates-to-permission-modes">
58 隔離與權限模式的關係58 隔離如何與權限模式相關
59</h3>59</h3>
60 60
61[Permission modes](/zh-TW/permission-modes) 決定工具呼叫是否執行以及是否首先提示您。隔離限制命令執行後可以存取的內容。兩者協同工作:當權限模式允許操作在不詢問您的情況下執行時,隔離邊界限制這些操作可以到達的內容。61[權限模式](/docs/zh-TW/permission-modes)決定工具呼叫是否執行以及是否首先提示您。隔離限制命令執行後可以存取的內容。兩者協同工作:當權限模式允許動作在不詢問您的情況下執行時,隔離邊界限制這些動作可以到達的內容。
62 62
63當您傳遞 `--dangerously-skip-permissions` 時,Claude 會在不先詢問您的情況下採取行動;您只會被提示明確的 [ask rules](/zh-TW/permissions#manage-permissions)、連接器工具 [您的組織設定為 `ask`](/zh-TW/mcp#organization-controls-on-connector-tools)、標記為 [`requiresUserInteraction`](/zh-TW/mcp#require-approval-for-a-specific-tool) 的 MCP 工具,以及針對 `/` 或您的主目錄的移除。沒有提示來捕捉錯誤,您選擇的隔離邊界是保護您系統的東西。始終在容器、虛擬機或 [sandbox runtime](#sandbox-runtime) 內執行 `--dangerously-skip-permissions` 工作階段,以便檔案工具、MCP 伺服器和 hooks 也在邊界內。63當您傳遞 `--dangerously-skip-permissions` 時,Claude 在不首先詢問您的情況下執行。[沒有模式自動批准的動作](/docs/zh-TW/permission-modes#actions-no-mode-auto-approves)仍然適用。
64 64
65[Auto mode](/zh-TW/permission-modes#eliminate-prompts-with-auto-mode) 用分類器替換提示,該分類器審查操作並阻止超出請求範圍、針對無法識別的基礎設施或似乎由 Claude 讀取的敵對內容驅動的操作。分類器是每個操作的控制,而不是隔離邊界,因此隔離邊界仍然為無人值守的執行添加深度防禦,並且不像 `--dangerously-skip-permissions` 那樣是必需的。65沒有提示來捕捉錯誤,您選擇的隔離邊界是保護您系統的因素。始終在容器、虛擬機或 [沙箱執行時](#sandbox-runtime)內執行 `--dangerously-skip-permissions` 工作階段,以便檔案工具、MCP 伺服器和 hooks 也在邊界內。在 Linux 和 macOS 上,Claude Code 在以 root 身份執行時拒絕使用此旗標啟動,因此請以非 root 使用者身份執行容器、虛擬機或沙箱執行時。
66 66
67[sandboxed Bash tool](#sandboxed-bash-tool) 本身只限制 Bash,因此對於任一模式中的完全無人值守執行都不夠。您可以分層方法:在容器或虛擬機內執行沙箱化 Bash 工具可在外部環境邊界之上為您提供作業系統級命令限制。有關 Bash 沙箱本身如何與權限規則和模式交互的信息,請參閱 [How sandboxing relates to permissions and permission modes](/zh-TW/sandboxing#how-sandboxing-relates-to-permissions-and-permission-modes)。67[自動模式](/docs/zh-TW/permission-modes#eliminate-prompts-with-auto-mode)將提示替換為檢查動作的分類器。分類器是按動作的控制,而不是隔離邊界,因此隔離邊界仍為無人值守執行增加深度防禦,並且不像 `--dangerously-skip-permissions` 那樣是必需的。
68
69[沙箱化 Bash 工具](#sandboxed-bash-tool)本身只限制 Bash,因此對於任一模式中的完全無人值守執行都不夠。您可以分層方法:在容器或虛擬機內執行沙箱化 Bash 工具可在外部環境邊界之上為您提供作業系統級命令限制。有關 Bash 沙箱本身如何與權限規則和權限模式互動的詳細資訊,請參閱 [沙箱化如何與權限和權限模式相關](/docs/zh-TW/sandboxing#how-sandboxing-relates-to-permissions-and-permission-modes)。
68 70
69<h2 id="sandboxed-bash-tool">71<h2 id="sandboxed-bash-tool">
70 Sandboxed Bash tool72 Sandboxed Bash tool
74 此選項不支援原生 Windows。在 Windows 主機上,使用 WSL2 或下面的容器或虛擬機方法之一。76 此選項不支援原生 Windows。在 Windows 主機上,使用 WSL2 或下面的容器或虛擬機方法之一。
75</Note>77</Note>
76 78
77Sandboxed Bash tool 內建於 Claude Code 中。它使用作業系統原語來限制 Claude 執行的每個 Bash 命令的檔案系統和網路存取:Seatbelt(內建的 macOS 沙箱)和 Linux 和 WSL2 上的 [bubblewrap](https://github.com/containers/bubblewrap)。預設情況下,它允許寫入工作目錄,並在命令首次需要新網路域時提示。79Sandboxed Bash tool 內建於 Claude Code 中。它使用作業系統原語來限制 Claude 執行的每個 Bash 命令的檔案系統和網路存取。
78 80
79使用 `/sandbox` 命令啟用它。[Sandboxing](/zh-TW/sandboxing) 指南涵蓋批准模式、預設邊界以及如何擴大或縮小它。81執行 `/sandbox` 命令以開啟沙箱面板並選擇一個模式。[Sandboxing](/docs/zh-TW/sandboxing) 指南涵蓋批准模式、預設邊界以及如何擴大或縮小它。
80 82
81每個命令沙箱不涵蓋在會話中執行的所有內容:83每個命令沙箱不涵蓋在會話中執行的所有內容:
82 84
83* 其他 [built-in tools](/zh-TW/tools-reference)(如 Read、Edit 和 WebFetch)在 Claude Code 進程內執行,不會生成任意程式碼。[Permission rules](/zh-TW/permissions) 用於路徑或域來控制它們。85* 其他 [built-in tools](/docs/zh-TW/tools-reference)(如 Read、Edit 和 WebFetch)在 Claude Code 進程內執行,不會生成任意程式碼。[Permission rules](/docs/zh-TW/permissions) 用於路徑或域來控制它們。
84* [MCP](/zh-TW/mcp) 伺服器和 hooks 是在主機上無約束執行的獨立進程。86* [MCP](/docs/zh-TW/mcp) 伺服器和 hooks 是在主機上無約束執行的獨立進程。
85 87
86要將內建工具、MCP 伺服器和 hooks 全部放在一個作業系統邊界後面,請在 [sandbox runtime](#sandbox-runtime)、[dev container](#dev-containers) 或 [custom container](#custom-container) 內執行整個 Claude Code 進程。88要將內建工具、MCP 伺服器和 hooks 全部放在一個作業系統邊界後面,請在 [sandbox runtime](#sandbox-runtime)、[dev container](#dev-containers) 或 [custom container](#custom-container) 內執行整個 Claude Code 進程。
87 89
91 93
92[`@anthropic-ai/sandbox-runtime`](https://github.com/anthropic-experimental/sandbox-runtime) 套件將整個進程包裝在內建 Bash 沙箱使用的相同 Seatbelt 或 bubblewrap 隔離中。通過它執行 Claude Code 會限制會話中的每個工具、hook 和 MCP 伺服器,而不僅僅是 Bash。該 runtime 是測試版研究預覽,其配置格式可能會隨著套件的發展而改變。94[`@anthropic-ai/sandbox-runtime`](https://github.com/anthropic-experimental/sandbox-runtime) 套件將整個進程包裝在內建 Bash 沙箱使用的相同 Seatbelt 或 bubblewrap 隔離中。通過它執行 Claude Code 會限制會話中的每個工具、hook 和 MCP 伺服器,而不僅僅是 Bash。該 runtime 是測試版研究預覽,其配置格式可能會隨著套件的發展而改變。
93 95
94該 runtime 預設拒絕所有寫入和網路存取,因此在通過它啟動 Claude Code 之前配置它。在 `~/.srt-settings.json` 中,或您使用 `--settings` 傳遞的檔案中,至少允許寫入您的專案目錄和 Claude Code 的配置路徑 `~/.claude` 和 `~/.claude.json`。允許您的會話需要的網路域,包括 `api.anthropic.com` 或您配置的提供者的端點。有關完整的配置架構,請參閱套件 [README](https://github.com/anthropic-experimental/sandbox-runtime)。96本節涵蓋您配置的內容以及 runtime 自行強制執行的內容。有關在 Agent SDK 應用程式中部署 runtime,請參閱[安全部署指南](/docs/zh-TW/agent-sdk/secure-deployment#sandbox-runtime)。
97
98<h3 id="set-up-and-launch-the-runtime">
99 設定和啟動 runtime
100</h3>
101
102在 Linux 和 WSL2 上,runtime 依賴於內建沙箱使用的相同 `bubblewrap` 和 `socat` 套件,加上 `ripgrep`,Claude Code 會捆綁但獨立 runtime 從您的 PATH 解析。按照[設定 Linux 和 WSL2](/docs/zh-TW/sandboxing#set-up-linux-and-wsl2) 中的說明安裝 `bubblewrap` 和 `socat`,並從您的發行版套件管理員安裝 `ripgrep`。在 macOS 上,您不需要任何額外的套件。runtime 在那裡使用內建的 Seatbelt 沙箱。
103
104預設情況下,runtime 拒絕網路存取並將寫入限制在一小組內建 runtime 路徑,因此在通過它啟動 Claude Code 之前配置它。將您的配置放在 `~/.srt-settings.json` 中,或在您使用 `--settings` 傳遞的檔案中。套件 [README](https://github.com/anthropic-experimental/sandbox-runtime) 記錄了完整的配置架構。
105
106至少允許寫入存取:
107
108* 您的專案目錄。
109* Claude Code 的配置路徑 `~/.claude` 和 `~/.claude.json`。
110* `/tmp`,Claude Code 在其中寫入 runtime 檔案。
111
112允許您的會話需要的網路域:
113
114* `api.anthropic.com`,或您配置的提供者的端點。在第三方提供者上,也保留 `api.anthropic.com`:WebFetch 域安全檢查預設仍會呼叫它,除非您設定 `skipWebFetchPreflight: true`。
115* `claude.ai` 和 `platform.claude.com`,[OAuth 登入和令牌重新整理](/docs/zh-TW/network-config#network-access-requirements)需要這些。使用 API 金鑰進行身份驗證的執行可以捨棄這兩個。
116
117在 Linux 和 WSL2 上,runtime 僅將寫入授予應用於已存在的路徑。在全新環境中,在首次啟動前建立 Claude Code 的配置路徑:
118
119```bash theme={null}
120mkdir -p ~/.claude && echo '{}' > ~/.claude.json
121```
95 122
96設定檔就位後,使用 `npx` 啟動 Claude Code 並傳遞 `claude` 作為要包裝的命令:123設定檔就位後,使用 `npx` 啟動 Claude Code 並傳遞 `claude` 作為要包裝的命令:
97 124
101 128
102Claude Code 在沙箱內啟動,具有您配置的檔案系統和網路邊界。相同的命令適用於沙箱化獨立 MCP 伺服器或其他輔助進程。129Claude Code 在沙箱內啟動,具有您配置的檔案系統和網路邊界。相同的命令適用於沙箱化獨立 MCP 伺服器或其他輔助進程。
103 130
131<h3 id="what-the-runtime-blocks-on-its-own">
132 Runtime 自行阻止的內容
133</h3>
134
135runtime 在沒有您任何配置的情況下阻止最高風險的寫入:
136
137* `denyWrite` 優先於 `allowWrite`。
138* 在專案根目錄,runtime 拒絕 `.git/hooks`,除非您設定 `filesystem.allowGitConfig: true` 否則拒絕 `.git/config`,並拒絕 `.mcp.json`、`.claude/commands`、`.claude/agents` 和 shell 啟動檔案。
139* 在 macOS 上,這些拒絕在寫入發生時被檢查,因此它們也涵蓋嵌套檔案和在會話期間建立的儲存庫。
140* 在 Linux 和 WSL2 上,runtime 在啟動時建立拒絕清單一次。它可靠地涵蓋專案根目錄,對當時存在的嵌套副本進行最佳努力的淺層掃描,並不涵蓋會話稍後建立的任何內容,例如 `git init`、`git clone` 或腳手架。README 的 `mandatoryDenySearchDepth` 部分描述了掃描的確切語義。
141* 沒有有效的 `~/.srt-settings.json`,runtime 仍然啟動,阻止網路存取,並將寫入限制在內建 runtime 路徑,例如 `/tmp/claude`、`~/.npm/_logs` 和 `~/.claude/debug`。不要將乾淨啟動視為您的設定已載入的證明。
142* 當您傳遞 `--settings` 時,如果檔案無法載入,runtime 拒絕啟動。
143
144您的寫入授予仍然包括 Claude Code 載入配置的其他路徑,因此使用 `denyWrite` 拒絕這些路徑。可以寫入它們的沙箱化會話可以持久化 hook、權限規則或 MCP 伺服器,這些在您下次啟動 Claude Code 時以未沙箱化的方式執行。
145
146<h3 id="after-unattended-runs">
147 無人值守執行後
148</h3>
149
150檢查您保持可寫入的路徑。在 Linux 和 WSL2 上,也檢查會話建立的任何內容。
151
104<h2 id="dev-containers">152<h2 id="dev-containers">
105 Dev containers153 Dev containers
106</h2>154</h2>
107 155
108Dev container 在 VS Code 或相容編輯器管理的 Docker 容器內執行 Claude Code,您的專案掛載在其中。您可以在您的儲存庫中使用 `.devcontainer/` 目錄定義您自己的。156Dev container 在 VS Code 或相容編輯器管理的 Docker 容器內執行 Claude Code,您的專案掛載在其中。您可以在您的儲存庫中使用 `.devcontainer/` 目錄定義您自己的。
109 157
110claude-code 儲存庫發佈了一個 [example dev container](/zh-TW/devcontainer),其中包含預設拒絕 iptables 防火牆作為起點。將其複製到您的儲存庫中,並調整防火牆允許清單、基礎映像和固定的 Claude Code 版本以適應您的環境。因為防火牆阻止未批准的出站流量,像這樣的配置支援使用 `--dangerously-skip-permissions` 執行 Claude Code 進行無人值守工作。158claude-code 儲存庫發佈了一個 [example dev container](/docs/zh-TW/devcontainer),其中包含預設拒絕 iptables 防火牆作為起點。將其複製到您的儲存庫中,並調整防火牆允許清單、基礎映像和固定的 Claude Code 版本以適應您的環境。因為防火牆阻止未批准的出站流量,像這樣的配置支援使用 `--dangerously-skip-permissions` 執行 Claude Code 進行無人值守工作。
111 159
112<h2 id="custom-container">160<h2 id="custom-container">
113 Custom container161 Custom container
117 165
118多個託管沙箱和遠端執行服務可以為您託管容器。與您操作的任何容器相同的檢查清單適用:審查掛載為可寫的內容、容器內可到達的認證和令牌,以及網路出站策略允許的內容。166多個託管沙箱和遠端執行服務可以為您託管容器。與您操作的任何容器相同的檢查清單適用:審查掛載為可寫的內容、容器內可到達的認證和令牌,以及網路出站策略允許的內容。
119 167
120您可以在容器內分層內建 Bash 沙箱以進行每個命令的限制。無特權容器需要 [Sandboxing troubleshooting](/zh-TW/sandboxing#troubleshooting) 中描述的嵌套沙箱設定。168您可以在容器內分層內建 Bash 沙箱以進行每個命令的限制。無特權容器需要 [Sandboxing troubleshooting](/docs/zh-TW/sandboxing#troubleshooting) 中描述的嵌套沙箱設定。
121 169
122<h2 id="virtual-machine">170<h2 id="virtual-machine">
123 Virtual machine171 Virtual machine
124</h2>172</h2>
125 173
126專用虛擬機提供最強的分離,具有自己的核心,在雲或 microVM 部署中,具有自己的虛擬化硬體。選項包括雲實例、本地虛擬機管理程式和 microVM(如 Firecracker)。174專用虛擬機提供最強的分離,具有自己的核心,在雲或 microVM 部署中,具有自己的虛擬化硬體。選項包括雲實例、本地虛擬機管理程式和 microVM(如 Firecracker)。當您評估不受信任的程式碼、當您的安全策略要求代理和主機之間的核心級分離,或當沒有主機級方法滿足您的合規要求時,使用此方法。
127 175
128當您評估不受信任的程式碼、當您的安全策略要求代理和主機之間的核心級分離,或當沒有主機級方法滿足您的合規要求時,使用此方法。Docker Desktop 的 [sandboxes feature](https://docs.docker.com/ai/sandboxes/) 提供了一個具有自己的 Docker daemon 和工作區同步的 microVM,可以在已經有 Docker Desktop 的主機上執行 Claude Code。176[Docker Sandboxes](https://docs.docker.com/ai/sandboxes/) 提供了一個具有自己的 Docker daemon 和工作區同步的 microVM,可以在任何安裝了 Docker Sandboxes 的主機上執行 Claude Code。它是來自 Docker 的免費獨立產品,不需要 Docker Desktop。
129 177
130<h2 id="claude-code-on-the-web">178<h2 id="claude-code-on-the-web">
131 Claude Code on the web179 Claude Code on the web
132</h2>180</h2>
133 181
134[Claude Code on the web](/zh-TW/claude-code-on-the-web) 在隔離的、由 Anthropic 管理的虛擬機中執行每個會話。網路代理強制執行預設允許清單,單獨的代理在沙箱外保持您的 GitHub 令牌,同時在其內部為儲存庫存取發出範圍限定的認證。182[Claude Code on the web](/docs/zh-TW/claude-code-on-the-web) 在隔離的、由 Anthropic 管理的虛擬機中執行每個會話。網路代理強制執行預設允許清單,單獨的代理在沙箱外保持您的 GitHub 令牌,同時在其內部為儲存庫存取發出範圍限定的認證。您的組織路由到[自託管環境](/docs/zh-TW/self-hosted-environments)的會話在您配置的基礎設施上執行,其中隔離、出站控制和 git 認證是您部署的責任。
135 183
136當您想要完整的虛擬機隔離而無需自己配置基礎設施,或當您從沒有本地開發環境的設備委派任務時,使用此方法。它需要 Claude 訂閱和連接的 GitHub 帳戶,會話從 GitHub 複製您的儲存庫。有關計劃可用性和 GitHub 身份驗證選項,請參閱 [Claude Code on the web](/zh-TW/claude-code-on-the-web)。184當您想要完整的虛擬機隔離而無需自己配置基礎設施,或當您從沒有本地開發環境的設備委派任務時,使用此方法。它需要 Claude 訂閱。當您從網路介面啟動會話時,您還需要連接的 GitHub 帳戶,以便沙箱可以複製您的儲存庫。當您使用 `--cloud` 從 CLI 啟動時,如果未連接 GitHub,Claude Code 可以改為[捆綁並上傳您的本地儲存庫](/docs/zh-TW/claude-code-on-the-web#send-local-repositories-without-github)。有關計劃可用性和 GitHub 身份驗證選項,請參閱 [Claude Code on the web](/docs/zh-TW/claude-code-on-the-web)。
137 185
138<h2 id="enforce-isolation-across-an-organization">186<h2 id="enforce-isolation-across-an-organization">
139 在整個組織中強制執行隔離187 在整個組織中強制執行隔離
140</h2>188</h2>
141 189
142個別開發人員可以選擇上述任何方法。組織可以強制執行的內容以及使用哪些工具取決於方法:190個別開發人員可以選擇本頁面上的任何 sandboxing 方法。組織可以強制執行的內容以及使用哪些工具取決於方法:
143 191
144* **Built-in Bash sandbox**:唯一 Claude Code 本身強制執行的方法。通過 [managed settings](/zh-TW/settings#settings-files) 傳遞 `sandbox` 設定金鑰,可以是由您的 MDM 管理的檔案,也可以通過 Claude.ai 上的 [server-managed settings](/zh-TW/server-managed-settings)。有關要部署的金鑰以及如何防止開發人員擴大策略,請參閱 [Enforce sandboxing with managed settings](/zh-TW/sandboxing#enforce-sandboxing-with-managed-settings)。192* **Built-in Bash sandbox**:唯一 Claude Code 本身強制執行的方法。通過 [managed settings](/docs/zh-TW/managed-settings#delivery-mechanisms) 傳遞 `sandbox` 設定金鑰,可以是由您的 MDM 管理的檔案,也可以通過 Claude.ai 上的 [server-managed settings](/docs/zh-TW/server-managed-settings)。有關要部署的金鑰以及如何防止開發人員擴大策略,請參閱 [Enforce sandboxing with managed settings](/docs/zh-TW/sandboxing#enforce-sandboxing-with-managed-settings)。
145* **Dev containers**:將 [example dev container](/zh-TW/devcontainer) 提交到您的儲存庫以標準化整個團隊的環境。這是一個約定而不是強制邊界,因為 Claude Code 不需要容器。如果開發人員不應該能夠在其外部執行 Claude Code,請使用您組織的設備管理或軟體允許清單工具強制執行。193* **Dev containers**:將 [example dev container](/docs/zh-TW/devcontainer) 提交到您的儲存庫以標準化整個團隊的環境。這是一個約定而不是強制邊界,因為 Claude Code 不需要容器。如果開發人員不應該能夠在其外部執行 Claude Code,請使用您組織的設備管理或軟體允許清單工具強制執行。
146* **Custom containers and VMs**:通過批准的映像分發 Claude Code,並使用您組織的設備管理或軟體允許清單工具防止在其外部安裝。194* **Custom containers and VMs**:通過批准的映像分發 Claude Code,並使用您組織的設備管理或軟體允許清單工具防止在其外部安裝。
147 195
148<h2 id="see-also">196<h2 id="see-also">
151 199
152這些頁面涵蓋上述方法的配置和策略詳細資訊。200這些頁面涵蓋上述方法的配置和策略詳細資訊。
153 201
154* [Sandboxing](/zh-TW/sandboxing):配置內建沙箱化 Bash 工具202* [Sandboxing](/docs/zh-TW/sandboxing):配置內建沙箱化 Bash 工具
155* [Dev container](/zh-TW/devcontainer):預配置的 Docker 開發容器203* [Dev container](/docs/zh-TW/devcontainer):預配置的 Docker 開發容器
156* [Security](/zh-TW/security):完整的 Claude Code 安全模型204* [Security](/docs/zh-TW/security):完整的 Claude Code 安全模型
157* [Secure deployment](/zh-TW/agent-sdk/secure-deployment):Agent SDK 應用程式的隔離指南205* [Secure deployment](/docs/zh-TW/agent-sdk/secure-deployment):Agent SDK 應用程式的隔離指南
158* [Settings](/zh-TW/settings#sandbox-settings):所有沙箱配置金鑰,包括託管設定傳遞206* [Settings](/docs/zh-TW/settings-reference#sandbox-settings):所有沙箱配置金鑰,包括託管設定傳遞