22 22
23## 在伺服器管理和端點管理的設定之間選擇23## 在伺服器管理和端點管理的設定之間選擇
24 24
25Claude Code 支援兩種集中設定方法。伺服器管理的設定從 Anthropic 的伺服器傳遞設定。[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms) 透過原生作業系統原則 (macOS 受管偏好設定、Windows 登錄) 或受管設定檔直接部署到裝置。25Claude Code 支援兩種集中設定方法。伺服器管理的設定從 Anthropic 的伺服器傳遞設定。[端點管理的設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms) 透過原生作業系統原則 (macOS 受管偏好設定、Windows 登錄) 或受管設定檔直接部署到裝置。
26 26
27| 方法 | 最適合 | 安全模型 |27| 方法 | 最適合 | 安全模型 |
28| :- | :- | :- |28| :- | :- | :- |
29| **伺服器管理的設定** | 沒有 MDM 的組織,或非受管裝置上的使用者 | Claude Code 在啟動時從 Anthropic 伺服器擷取的設定,並在工作階段期間每小時重新整理 |29| **伺服器管理的設定** | 沒有 MDM 的組織,或非受管裝置上的使用者 | Claude Code 在啟動時從 Anthropic 伺服器擷取的設定,並在工作階段期間每小時重新整理 |
30| **[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms)** | 具有 MDM 或端點管理的組織 | 透過 MDM 設定檔、登錄原則或受管設定檔部署到裝置的設定 |30| **[端點管理的設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms)** | 具有 MDM 或端點管理的組織 | 透過 MDM 設定檔、登錄原則或受管設定檔部署到裝置的設定 |
31 31
32如果您的裝置已在 MDM 或端點管理解決方案中註冊,端點管理的設定提供更強的安全保證,因為設定檔可以在作業系統層級受到保護,防止使用者修改。端點管理的設定不會到達 [雲端工作階段](/docs/zh-TW/model-config#surface-coverage) 在 Anthropic 代管的環境中,因此在網路上使用 Claude Code 的組織也應該設定伺服器管理的設定。[自我代管環境](/docs/zh-TW/self-hosted-environments) 中的工作階段也會讀取執行器映像中的受管設定檔。下面的 [設定優先順序](#settings-precedence) 說明該檔案何時適用。32如果您的裝置已在 MDM 或端點管理解決方案中註冊,端點管理的設定提供更強的安全保證,因為設定檔可以在作業系統層級受到保護,防止使用者修改。端點管理的設定不會到達 [雲端工作階段](/docs/zh-TW/model-config.md#surface-coverage) 在 Anthropic 代管的環境中,因此在網路上使用 Claude Code 的組織也應該設定伺服器管理的設定。[自我代管環境](/docs/zh-TW/self-hosted-environments) 中的工作階段也會讀取執行器映像中的受管設定檔。下面的 [設定優先順序](#settings-precedence) 說明該檔案何時適用。
33 33
34## 設定伺服器管理的設定34## 設定伺服器管理的設定
35 35
41 41
42**2. 定義您的設定**42**2. 定義您的設定**
43 43
44將您的設定新增為 JSON。支援 [`settings.json` 中提供的所有設定](/docs/zh-TW/settings-reference#all-settings),除了限制於作業系統層級原則傳遞的設定外;請參閱[目前的限制](#current-limitations)以取得該簡短清單。這包括 [hooks](/docs/zh-TW/hooks)、[環境變數](/docs/zh-TW/env-vars) 和[僅限受管的設定](/docs/zh-TW/managed-settings#managed-only-settings),例如 `allowManagedPermissionRulesOnly`。44將您的設定新增為 JSON。支援 [`settings.json` 中提供的所有設定](/docs/zh-TW/settings-reference#all-settings),除了限制於作業系統層級原則傳遞的設定外;請參閱[目前的限制](#current-limitations)以取得該簡短清單。這包括 [hooks](/docs/zh-TW/hooks.md)、[環境變數](/docs/zh-TW/env-vars.md) 和[僅限受管的設定](/docs/zh-TW/managed-settings.md#managed-only-settings),例如 `allowManagedPermissionRulesOnly`。
45 45
46此範例強制執行權限拒絕清單,防止使用者繞過權限,並將權限規則限制為在受管設定中定義的規則。`Bash(curl *)` 規則符合 `curl` [如 Claude 所寫的](/docs/zh-TW/permissions#bash-rule-limits),而不是 `/usr/bin/curl` 或 `sh -c 'curl …'`;對於不依賴命令文字的網路強制執行,請新增 [`sandbox` 區塊搭配 `allowManagedDomainsOnly`](/docs/zh-TW/sandboxing#configure-the-sandbox-for-your-organization)。46此範例強制執行權限拒絕清單,防止使用者繞過權限,並將權限規則限制為在受管設定中定義的規則。`Bash(curl *)` 規則符合 `curl` [如 Claude 所寫的](/docs/zh-TW/permissions.md#bash-rule-limits),而不是 `/usr/bin/curl` 或 `sh -c 'curl …'`;對於不依賴命令文字的網路強制執行,請新增 [`sandbox` 區塊搭配 `allowManagedDomainsOnly`](/docs/zh-TW/sandboxing#configure-the-sandbox-for-your-organization)。
47 47
48```json theme={null}48```json theme={null}
49{49{
81 81
82因為 hooks 執行 shell 命令,使用者在互動式工作階段中會在 Claude Code 套用它們之前看到[安全核准對話方塊](#security-approval-dialogs)。82因為 hooks 執行 shell 命令,使用者在互動式工作階段中會在 Claude Code 套用它們之前看到[安全核准對話方塊](#security-approval-dialogs)。
83 83
84若要設定 [auto mode](/docs/zh-TW/permission-modes#eliminate-prompts-with-auto-mode) 分類器,使其知道您的組織信任哪些儲存庫、儲存桶和網域,請以相同方式傳遞 `autoMode` 區塊;請參閱[設定 auto mode](/docs/zh-TW/auto-mode-config),了解 `autoMode` 項目如何影響分類器阻止的內容,以及關於 `environment`、`allow`、`soft_deny` 和 `hard_deny` 欄位的重要警告。84若要設定 [auto mode](/docs/zh-TW/permission-modes.md#eliminate-prompts-with-auto-mode) 分類器,使其知道您的組織信任哪些儲存庫、儲存桶和網域,請以相同方式傳遞 `autoMode` 區塊;請參閱[設定 auto mode](/docs/zh-TW/auto-mode-config.md),了解 `autoMode` 項目如何影響分類器阻止的內容,以及關於 `environment`、`allow`、`soft_deny` 和 `hard_deny` 欄位的重要警告。
85 85
86**3. 儲存並部署**86**3. 儲存並部署**
87 87
89 89
90編輯器會根據已發布的 Claude Code 設定 JSON schema 檢查您的 JSON。如果在可解析的 JSON 中發現問題,它會顯示警告並變更儲存按鈕的標籤。當設定已儲存時,標籤為 **Update with errors**;尚未儲存任何設定時,標籤為 **Add with errors**。該按鈕仍會儲存,因為 schema 警告不會阻止儲存。90編輯器會根據已發布的 Claude Code 設定 JSON schema 檢查您的 JSON。如果在可解析的 JSON 中發現問題,它會顯示警告並變更儲存按鈕的標籤。當設定已儲存時,標籤為 **Update with errors**;尚未儲存任何設定時,標籤為 **Add with errors**。該按鈕仍會儲存,因為 schema 警告不會阻止儲存。
91 91
92schema [可能落後於最新版本](/docs/zh-TW/settings#edit-a-settings-file),因此編輯器可能會標記[設定參考](/docs/zh-TW/settings-reference#all-settings)中有記載的鍵或值。Claude Code 會接收您儲存的鍵和值,並在載入時執行[其自身的驗證](#invalid-entries-in-delivered-settings)。92schema [可能落後於最新版本](/docs/zh-TW/settings.md#edit-a-settings-file),因此編輯器可能會標記[設定參考](/docs/zh-TW/settings-reference.md#all-settings)中有記載的鍵或值。Claude Code 會接收您儲存的鍵和值,並在載入時執行[其自身的驗證](#invalid-entries-in-delivered-settings)。
93 93
94### 驗證設定傳遞94### 驗證設定傳遞
95 95
117 117
118### 僅限受管的設定118### 僅限受管的設定
119 119
120大多數[設定金鑰](/docs/zh-TW/settings-reference#all-settings)可在任何範圍中運作。少數金鑰只能從受管設定中讀取,在放置於使用者或專案設定檔中時無效。請參閱[僅限受管的設定](/docs/zh-TW/managed-settings#managed-only-settings)以取得權限和外掛程式控制項,或讀取[所有設定](/docs/zh-TW/settings-reference#all-settings)索引的 Scope 欄以取得完整集合。120大多數[設定金鑰](/docs/zh-TW/settings-reference.md#all-settings)可在任何範圍中運作。少數金鑰只能從受管設定中讀取,在放置於使用者或專案設定檔中時無效。請參閱[僅限受管的設定](/docs/zh-TW/managed-settings.md#managed-only-settings)以取得權限和外掛程式控制項,或讀取[所有設定](/docs/zh-TW/settings-reference.md#all-settings)索引的 Scope 欄以取得完整集合。
121 121
122### 目前的限制122### 目前的限制
123 123
126* 設定統一套用到組織中的所有使用者。尚不支援每個群組的設定。126* 設定統一套用到組織中的所有使用者。尚不支援每個群組的設定。
127* 您無法透過伺服器管理的設定分發 [`managed-mcp.json`](/docs/zh-TW/managed-mcp) 檔案。改為在該處傳遞 `allowedMcpServers` 和 `deniedMcpServers` 原則金鑰。在 Claude Code v2.1.259 或更新版本上,您也可以透過 [`managedMcpServers`](/docs/zh-TW/managed-mcp#provide-servers-through-managed-settings) 提供遠端伺服器,其僅接受 `http` 和 `sse` 伺服器,且不會以檔案的方式進行獨佔控制。127* 您無法透過伺服器管理的設定分發 [`managed-mcp.json`](/docs/zh-TW/managed-mcp) 檔案。改為在該處傳遞 `allowedMcpServers` 和 `deniedMcpServers` 原則金鑰。在 Claude Code v2.1.259 或更新版本上,您也可以透過 [`managedMcpServers`](/docs/zh-TW/managed-mcp#provide-servers-through-managed-settings) 提供遠端伺服器,其僅接受 `http` 和 `sse` 伺服器,且不會以檔案的方式進行獨佔控制。
128 128
129 Claude Code 在其[系統路徑](/docs/zh-TW/managed-mcp#exclusive-control-with-managed-mcp-json)部署的 `managed-mcp.json` 與受管設定層級分開讀取,因此當伺服器管理的設定生效時,檔案仍然適用。129 Claude Code 在其[系統路徑](/docs/zh-TW/managed-mcp.md#exclusive-control-with-managed-mcp-json)部署的 `managed-mcp.json` 與受管設定層級分開讀取,因此當伺服器管理的設定生效時,檔案仍然適用。
130* 限制於作業系統層級原則來源的設定,例如 `policyHelper` 和 `wslInheritsWindowsSettings`,不會被接受。改為透過 MDM 或系統 `managed-settings.json` 檔案部署它們。`policyHelper` 以該方式部署時,只有在其來源是在[受管層級內的優先順序](/docs/zh-TW/managed-settings#precedence-within-the-managed-tier)下選擇的來源時,才會執行。130* 限制於作業系統層級原則來源的設定,例如 `policyHelper` 和 `wslInheritsWindowsSettings`,不會被接受。改為透過 MDM 或系統 `managed-settings.json` 檔案部署它們。`policyHelper` 以該方式部署時,只有在其來源是在[受管層級內的優先順序](/docs/zh-TW/managed-settings.md#precedence-within-the-managed-tier)下選擇的來源時,才會執行。
131 131
132## 設定傳遞132## 設定傳遞
133 133
134### 設定優先順序134### 設定優先順序
135 135
136伺服器管理的設定和[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms)都佔據 Claude Code [設定階層](/docs/zh-TW/settings#settings-precedence)中的最高層級。您在此設定的金鑰優先於使用者自己的設定檔或 `--settings` 值中的相同金鑰,但[受管設定優先順序的例外](/docs/zh-TW/settings#exceptions-to-managed-settings-precedence)除外。136伺服器受管設定與[端點受管設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms)同樣位於 Claude Code [設定階層](/docs/zh-TW/settings.md#settings-precedence)的最高層級。在此設定的鍵優先於使用者自己的設定檔或 `--settings` 值中的相同鍵,但[受管設定優先順序的例外](/docs/zh-TW/settings.md#exceptions-to-managed-settings-precedence)除外。
137 137
138在受管層級內,Claude Code 預設會使用第一個傳遞至少一個原則金鑰的來源,先檢查伺服器管理的設定,然後是端點管理的設定,除了[接下來涵蓋的例外金鑰](#per-key-exceptions-across-managed-sources)。[Claude Code 如何合併受管來源](/docs/zh-TW/managed-settings#precedence-within-the-managed-tier)有完整的排名、控制金鑰的例外,以及適用於每個來源的選擇加入。138在受管層級內,Claude Code 預設會使用第一個傳遞至少一個政策鍵的來源,先檢查伺服器受管設定,再檢查端點受管設定,但[接下來說明的例外鍵](#per-key-exceptions-across-managed-sources)除外。[Claude Code 如何組合受管來源](/docs/zh-TW/managed-settings.md#precedence-within-the-managed-tier)提供完整的排序、控制鍵的例外規定,以及套用所有來源的選擇性啟用方式。
139 139
140如果選定的來源是 MDM 原則或受管設定檔,其 [`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 提供受管設定,則該協助程式的輸出會取代該來源,成為該執行的唯一受管設定。當伺服器管理的設定傳遞原則金鑰時,Claude Code 不會查詢在 MDM 或檔案型設定中設定的 `policyHelper`。140如果所選來源是 MDM 政策或受管設定檔,且其 [`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 提供受管設定,則該 helper 的輸出會取代該來源,成為此次執行唯一的受管組態。當伺服器受管設定傳遞了政策鍵時,Claude Code 不會參考在 MDM 或檔案型設定中設定的 `policyHelper`。
141 141
142如果稍後的擷取發現伺服器管理的設定已移除,Claude Code 會立即執行該協助程式,而不是在下次啟動時執行。[`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 項目涵蓋該執行失敗時會發生什麼。142如果之後的擷取發現伺服器受管設定已被移除,Claude Code 會立即執行該 helper,而不是等到下次啟動。[`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 項目說明了該次執行失敗時會發生什麼情況。
143 143
144如果您在管理員主控台中清除伺服器管理的設定,意圖回退到端點管理的 plist 或登錄原則,請注意[快取的設定](#fetch-and-caching-behavior)會在用戶端機器上持續存在,直到下次成功擷取,而[僅在下次啟動時套用](#fetch-and-caching-behavior)的金鑰(例如 `model`)會保持有效,直到每個用戶端重新啟動。執行 `/status` 以查看哪個受管來源處於作用中。144如果您在管理主控台中清除伺服器受管組態,打算改為回退至端點受管的 plist 或登錄檔政策,請注意[快取的設定](#fetch-and-caching-behavior)會保留在用戶端電腦上,直到下一次成功擷取為止,而[僅在下次啟動時套用](#fetch-and-caching-behavior)的鍵(例如 `model`)在每個用戶端重新啟動之前都會持續生效。執行 `/status` 可查看目前生效的受管來源。
145 145
146### 跨受管來源的個別金鑰例外146### 跨受管來源的個別鍵例外
147 147
148這些金鑰是無合併規則的例外:148以下鍵是不合併規則的例外:
149 149
150* **跨來源鎖定金鑰**:一小組金鑰,例如沙箱允許清單鎖定,[列在受管設定頁面上](/docs/zh-TW/managed-settings#precedence-within-the-managed-tier)。當任何管理員控制的受管來源設定它們時,Claude Code 會遵守它們;使用者可寫入的 HKCU 登錄層級被排除。150* **跨來源鎖定鍵**:一小組鍵,例如沙箱允許清單鎖定,[列於受管設定頁面](/docs/zh-TW/managed-settings.md#precedence-within-the-managed-tier)。只要任何由管理員控制的受管來源設定了這些鍵,Claude Code 就會遵循;使用者可寫入的 HKCU 登錄檔層級則排除在外。
151 151
152 當 [`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 提供受管設定時,其輸出是這些檢查讀取的唯一來源,除了 [`forceRemoteSettingsRefresh`](/docs/zh-TW/settings-reference#forceremotesettingsrefresh),Claude Code 在啟動時直接從管理員來源讀取它。152 當 [`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 提供受管設定時,其輸出是這些檢查唯一讀取的來源,但 [`forceRemoteSettingsRefresh`](/docs/zh-TW/settings-reference#forceremotesettingsrefresh) 除外,Claude Code 會在啟動時直接從管理來源讀取該鍵。
153* **`env` 區塊**:除了與認證金鑰配對的遙測單位和路由變數(下面涵蓋)外,它會跨管理員控制的來源按金鑰合併。對於每個環境變數,定義它的最高優先順序來源會獲勝,較低的管理員來源會填入較高來源未設定的變數。因此,端點管理的 `env` 項目會在伺服器管理的設定未設定該變數時套用,或在快取的伺服器值[等待伺服器確認時被保留](#fetch-and-caching-behavior)時套用。需要 Claude Code v2.1.223 或更新版本。在 v2.1.223 之前,Claude Code 僅套用選定來源的整個 `env` 區塊。153* **`env` 區塊**:除了遙測單元以及與憑證鍵配對的路由變數(兩者都在下方說明)之外,此區塊會在由管理員控制的來源之間逐鍵合併。對於每個環境變數,定義該變數的最高優先順序來源勝出,而較低的管理來源會補上較高來源未設定的變數。因此,只要伺服器受管組態未設定某個變數,或該變數的快取伺服器值正[等待伺服器確認而被暫緩](#fetch-and-caching-behavior),端點受管的 `env` 項目就會套用。需要 Claude Code v2.1.223 或更新版本。在 v2.1.223 之前,Claude Code 只會套用所選來源的整個 `env` 區塊。
154 * **遙測單位**:`OTEL_EXPORTER_OTLP_*` 匯出器金鑰、`OTEL_LOG_*` 內容擷取切換、`OTEL_LOGS_EXPORTER` 以及測試版追蹤變數 `ENABLE_BETA_TRACING_DETAILED` 和 `BETA_TRACING_ENDPOINT` 遵循設定任何這些變數的最高來源作為一個單位。傳遞 `otelHeadersHelper` 認證金鑰的來源也會聲稱該單位,但僅在它是選定來源時才會放置這些變數:未被選定但傳遞該金鑰的來源不會貢獻其中任何一個,仍然會阻止較低來源填入它們。無論哪種方式,來自一個來源的匯出器端點永遠無法與來自另一個來源的認證配對。154 * **遙測單元**:`OTEL_EXPORTER_OTLP_*` 匯出器鍵、`OTEL_LOG_*` 內容擷取切換、`OTEL_LOGS_EXPORTER`,以及 beta 追蹤變數 `ENABLE_BETA_TRACING_DETAILED` 和 `BETA_TRACING_ENDPOINT`,會以單元形式跟隨設定其中任一項的最高來源。傳遞 `otelHeadersHelper` 憑證鍵的來源也會佔據此單元,但只有在它是所選來源時才會套用這些變數:未被選取但傳遞了該鍵的來源不會提供其中任何變數,且仍會阻止較低來源補上這些變數。無論哪種情況,來自某個來源的匯出器端點都絕不會與來自另一個來源的憑證配對。
155 * **認證配對的路由**:將路由變數與選定來源專用認證金鑰(例如 `apiKeyHelper` 或 `otelHeadersHelper`)配對的來源,僅在它贏得該位置時才會貢獻這些路由變數。155 * **與憑證配對的路由**:將路由變數與僅限所選來源的憑證鍵(例如 `apiKeyHelper` 或 `otelHeadersHelper`)配對的來源,只有在贏得該位置時才會提供這些路由變數。
156* **`allowedProviders`**:在機器上設定的清單和伺服器管理的清單會按照[其項目的 Scope 備註](/docs/zh-TW/settings-reference#allowedproviders)所述進行合併。需要 Claude Code v2.1.285 或更新版本156* **`allowedProviders`**:在電腦上設定的清單與伺服器受管清單,會依照[其項目的範圍說明](/docs/zh-TW/settings-reference.md#allowedproviders)所述方式組合。需要 Claude Code v2.1.285 或更新版本
157* **閘道登入金鑰**:Claude Code 永遠不會從伺服器管理的設定讀取 [`forceLoginGatewayUrl`](/docs/zh-TW/settings-reference#forcelogingatewayurl)、[`gatewayInternalNetworks`](/docs/zh-TW/settings-reference#gatewayinternalnetworks) 或 [`forceLoginMethod`](/docs/zh-TW/settings-reference#forceloginmethod) 的 `"gateway"` 值,因此伺服器管理的設定中的值既不會套用,也不會隱藏在 MDM 原則或受管設定檔中設定的值。[`managedSourcesBehavior` 項目](/docs/zh-TW/settings-reference#managedsourcesbehavior)說明機器上的哪個管理員來源提供它們。157* **閘道登入鍵**:Claude Code 絕不會從伺服器受管設定讀取 [`forceLoginGatewayUrl`](/docs/zh-TW/settings-reference#forcelogingatewayurl)、[`gatewayInternalNetworks`](/docs/zh-TW/settings-reference#gatewayinternalnetworks) 或 [`forceLoginMethod`](/docs/zh-TW/settings-reference#forceloginmethod) 的 `"gateway"` 值,因此在那裡設定的值既不會套用,也不會遮蔽在 MDM 政策或受管設定檔中設定的值。[`managedSourcesBehavior` 項目](/docs/zh-TW/settings-reference#managedsourcesbehavior)說明了由電腦上的哪個管理來源提供這些值。
158 158
159### 擷取和快取行為159### 擷取與快取行為
160 160
161Claude Code 在啟動時從 Anthropic 的伺服器擷取設定,並在作用中的工作階段期間每小時輪詢一次更新。161Claude Code 會在啟動時從 Anthropic 的伺服器擷取設定,並在作用中的工作階段期間每小時輪詢更新。
162 162
163透過[Claude 應用程式閘道](#platform-availability)登入的用戶端會從閘道擷取其設定,並在工作階段開始前等待該擷取,因此下面清單中的擷取不適用於它。[強制執行失敗關閉啟動](#enforce-fail-closed-startup)涵蓋該擷取失敗時會發生什麼。163透過 [Claude apps 閘道](#platform-availability)登入的用戶端會從閘道擷取設定,並在工作階段開始前等待該擷取完成,因此下列清單中的擷取不適用於此類用戶端。[強制失敗即關閉的啟動](#enforce-fail-closed-startup)說明了該擷取失敗時會發生什麼情況。
164 164
165**首次啟動而無快取設定:**165**沒有快取設定的首次啟動:**
166 166
167* 當開發人員在啟動時登入時(例如在首次執行或 `/logout` 之後),Claude Code 會等待最多五秒鐘以進行擷取,然後才會開啟工作階段。當原則及時到達時,Claude Code 會從第一個畫面強制執行它,並在其上顯示您的 [`companyAnnouncements`](/docs/zh-TW/settings-reference#companyannouncements)。當承載需要[安全核准](#security-approval-dialogs)時,Claude Code 會結束等待,並在開發人員核准後套用承載167* 當開發人員在啟動時登入,例如首次執行或執行 `/logout` 之後,Claude Code 會在開啟工作階段之前等待擷取最多五秒。若政策及時送達,Claude Code 會從第一個畫面就強制執行該政策,並在該畫面上顯示您的 [`companyAnnouncements`](/docs/zh-TW/settings-reference#companyannouncements)。若 payload 需要[安全性核准](#security-approval-dialogs),Claude Code 會結束等待,並在開發人員核准後套用該 payload
168* 在任何其他啟動中,以及當該五秒鐘等待時間用完時,Claude Code 會在擷取繼續進行時開啟工作階段,因此在設定載入和限制生效之前會經過一個簡短的視窗168* 在任何其他啟動情況下,以及五秒等待逾時時,Claude Code 會在擷取持續進行的同時開啟工作階段,因此在設定載入且限制生效之前會有一段短暫的空窗期
169* 如果擷取失敗,Claude Code 會在沒有伺服器管理的設定的情況下繼續,並在互動工作階段中警告沒有遠端原則適用;端點管理的設定仍然適用。如果受管來源設定 [`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup),Claude Code 會改為結束169* 如果擷取失敗,Claude Code 會在沒有伺服器受管設定的情況下繼續執行,並在互動式工作階段中警告沒有套用任何遠端政策;端點受管設定仍會套用。如果受管來源設定了 [`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup),Claude Code 則會改為結束
170 170
171**後續啟動並有快取設定:**171**具有快取設定的後續啟動:**
172 172
173* 快取設定在啟動時立即套用,除了快取的 `modelPricing` 和 `managedMcpServers` 值以及 Claude Code 保留的環境變數,直到伺服器確認承載173* 快取的設定會在啟動時立即套用,但快取的 `modelPricing` 和 `managedMcpServers` 值,以及 Claude Code 在伺服器確認 payload 之前暫緩的環境變數除外
174* 快取的 [`modelPricing`](/docs/zh-TW/settings-reference#modelpricing) 在工作階段的擷取確認承載之前不會套用。在那之前,開發人員在 `/usage` 中看到的成本數字和狀態行是列表價格174* 快取的 [`modelPricing`](/docs/zh-TW/settings-reference#modelpricing) 在工作階段的擷取確認 payload 之前不會套用。在那之前,開發人員在 `/usage` 和狀態列中看到的費用數字皆為定價
175* 快取的 [`managedMcpServers`](/docs/zh-TW/settings-reference#managedmcpservers) 區塊在工作階段的擷取確認承載之前不會套用。Claude Code 會等待最多 30 秒鐘以進行該擷取,然後才會連接 MCP 伺服器。如果擷取失敗或逾時,工作階段會在沒有組織伺服器的情況下啟動,`/status` 會說明這一點,它們會在稍後的擷取確認它們後連接。請參閱[提供的伺服器何時連接](/docs/zh-TW/managed-mcp#when-provided-servers-connect)以了解完整行為,包括首次啟動。需要 Claude Code v2.1.259 或更新版本175* 快取的 [`managedMcpServers`](/docs/zh-TW/settings-reference#managedmcpservers) 區塊在工作階段的擷取確認 payload 之前不會套用。Claude Code 會在連線 MCP 伺服器之前等待該擷取最多 30 秒。如果擷取失敗或逾時,工作階段會在沒有組織伺服器的情況下啟動,`/status` 會註明此情況,而這些伺服器會在之後的擷取確認它們後連線。如需完整行為(包括首次啟動),請參閱[提供的伺服器何時連線](/docs/zh-TW/managed-mcp.md#when-provided-servers-connect)。需要 Claude Code v2.1.259 或更新版本
176* Claude Code 在背景擷取新鮮設定176* Claude Code 會在背景擷取最新設定
177* 快取設定透過網路故障持續存在。如果啟動擷取失敗,Claude Code 會在互動工作階段中警告快取原則正在生效177* 快取的設定在網路故障期間會持續保留。如果啟動時的擷取失敗,Claude Code 會在互動式工作階段中警告目前生效的是快取的政策
178* 在擷取成功之前,在啟動時保留的值會保持被保留178* 在擷取成功之前,啟動時暫緩的值會持續暫緩
179 179
180Claude Code 會在快取的 `env` 區塊中保留多個變數類別,直到伺服器確認該工作階段的 payload。這可防止快取的代理伺服器、憑證授權單位、端點或憑證值重新導向、攔截或重新驗證確認 payload 的設定擷取。強化只適用於伺服器擷取的設定快取:透過 MDM 或 `managed-settings.json` 部署的[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms)不受影響。被保留的類別包括:180Claude Code 會暫緩快取 `env` 區塊中的數類變數,直到伺服器確認該工作階段的 payload 為止。這可防止快取的代理伺服器、憑證授權單位、端點或憑證值重新導向、攔截或重新驗證用來確認 payload 的設定擷取。此強化措施僅適用於從伺服器擷取的設定快取:透過 MDM 或 `managed-settings.json` 部署的[端點受管設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms)不受影響。暫緩的類別包括:
181 181
182* Proxy 和 TLS 設定,例如 `HTTPS_PROXY`、`NODE_EXTRA_CA_CERTS` 以及 mTLS 用戶端憑證變數 `CLAUDE_CODE_CLIENT_CERT` 和 `CLAUDE_CODE_CLIENT_KEY`182* 代理伺服器與 TLS 組態,例如 `HTTPS_PROXY`、`NODE_EXTRA_CA_CERTS`,以及 mTLS 用戶端憑證變數 `CLAUDE_CODE_CLIENT_CERT` 和 `CLAUDE_CODE_CLIENT_KEY`
183* API 路由和提供者選擇,包括 `ANTHROPIC_BASE_URL`、提供者選擇變數(例如 `CLAUDE_CODE_USE_BEDROCK` 和 `CLAUDE_CODE_USE_VERTEX`)以及提供者端點 URL(例如 `ANTHROPIC_BEDROCK_BASE_URL`)183* API 路由與提供者選擇,包括 `ANTHROPIC_BASE_URL`、提供者選擇變數(例如 `CLAUDE_CODE_USE_BEDROCK` 和 `CLAUDE_CODE_USE_VERTEX`),以及提供者端點 URL(例如 `ANTHROPIC_BEDROCK_BASE_URL`)
184* 驗證認證,例如 `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN` 和 `CLAUDE_CODE_OAUTH_TOKEN`184* 身分驗證憑證,例如 `ANTHROPIC_API_KEY`、`ANTHROPIC_AUTH_TOKEN` 和 `CLAUDE_CODE_OAUTH_TOKEN`
185* 設定目錄選擇器 `CLAUDE_CONFIG_DIR`185* 設定目錄選擇器 `CLAUDE_CONFIG_DIR`
186* 認證來源和設定目錄選擇器,在 Claude Code v2.1.223 或更新版本中:工作負載身分識別聯盟變數(例如 `ANTHROPIC_FEDERATION_RULE_ID` 和 `ANTHROPIC_IDENTITY_TOKEN`)、設定檔和設定目錄選擇器 `ANTHROPIC_PROFILE` 和 `ANTHROPIC_CONFIG_DIR`,以及作業系統目錄變數 `HOME`、`XDG_CONFIG_HOME`、`APPDATA` 和 `USERPROFILE`186* 憑證來源與設定目錄選擇器(Claude Code v2.1.223 或更新版本):Workload Identity Federation 變數(例如 `ANTHROPIC_FEDERATION_RULE_ID` 和 `ANTHROPIC_IDENTITY_TOKEN`)、設定檔與設定目錄選擇器 `ANTHROPIC_PROFILE` 和 `ANTHROPIC_CONFIG_DIR`,以及作業系統目錄變數 `HOME`、`XDG_CONFIG_HOME`、`APPDATA` 和 `USERPROFILE`
187 187
188Claude Code 僅在啟動時讀取工作負載身分識別聯盟變數以及 `ANTHROPIC_PROFILE` 和 `ANTHROPIC_CONFIG_DIR` 選擇器,因此伺服器傳遞的值不會在擷取成功後切換工作階段的認證來源。若要在 Claude Code v2.1.223 或更新版本上傳遞這些選擇器,請使用[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms),例如 MDM 或 `managed-settings.json`。對於 `CLAUDE_CONFIG_DIR` 和作業系統目錄變數,保留本身就是保護:快取值會保持在環境之外,直到伺服器確認承載。188Claude Code 只在啟動時讀取 Workload Identity Federation 變數以及 `ANTHROPIC_PROFILE` 和 `ANTHROPIC_CONFIG_DIR` 選擇器,因此即使擷取成功,伺服器傳遞的這些值也不會切換工作階段的憑證來源。若要在 Claude Code v2.1.223 或更新版本上傳遞這些選擇器,請使用[端點受管設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms),例如 MDM 或 `managed-settings.json`。對於 `CLAUDE_CONFIG_DIR` 和作業系統目錄變數,暫緩本身就是保護措施:快取的值在伺服器確認 payload 之前都不會進入環境。
189 189
190快取 `env` 區塊中的所有其他金鑰在啟動時套用。一旦伺服器確認承載,並且如果需要[安全核准](#security-approval-dialogs),您核准它,被保留的變數會在工作階段的其餘時間套用。190快取 `env` 區塊中的其他所有鍵都會在啟動時套用。一旦伺服器確認了 payload,且若該 payload 需要[安全性核准](#security-approval-dialogs)而您已核准,暫緩的變數就會在工作階段的剩餘時間內套用。
191 191
192如果您的組織需要 Proxy 才能到達 `api.anthropic.com`,保留只會影響伺服器傳遞的 `env` 區塊本身:透過 MDM 或 `managed-settings.json` 在[端點管理的](/docs/zh-TW/managed-settings#delivery-mechanisms) `env` 區塊中設定的 Proxy、在殼層環境中設定的 Proxy,或在[使用者設定](/docs/zh-TW/settings#where-settings-live)中設定的 Proxy 會到達設定擷取。端點管理的來源需要 Claude Code v2.1.223 或更新版本:快取的伺服器管理 Proxy 值會被保留,直到擷取確認它,因此端點管理的值按金鑰填入並到達擷取本身。在 v2.1.223 之前,請使用殼層環境或使用者設定,以便 Proxy 與快取的伺服器承載一起套用。首次啟動沒有快取,因此端點管理的來源、殼層環境或使用者設定仍然是初始擷取的必要條件。192如果您的組織需要透過代理伺服器才能連線到 `api.anthropic.com`,暫緩只會影響伺服器傳遞的 `env` 區塊本身:透過 MDM 或 `managed-settings.json` 在[端點受管](/docs/zh-TW/managed-settings.md#delivery-mechanisms) `env` 區塊中設定的代理伺服器、在 shell 環境中設定的代理伺服器,或在[使用者設定](/docs/zh-TW/settings.md#where-settings-live)中設定的代理伺服器,都能用於設定擷取。端點受管來源需要 Claude Code v2.1.223 或更新版本:快取的伺服器受管代理伺服器值在擷取確認之前會被暫緩,因此端點受管的值會逐鍵補上,並用於擷取本身。在 v2.1.223 之前,請使用 shell 環境或使用者設定,讓代理伺服器能與快取的伺服器 payload 一起套用。首次啟動時沒有快取,因此初次擷取仍需要端點受管來源、shell 環境或使用者設定。
193 193
194Claude Code 會將大多數設定更新套用到執行中的工作階段,而無需重新啟動。某些更新僅在下次啟動時套用,包括 OpenTelemetry 匯出器設定、`model` 金鑰以及從 `env` 區塊移除變數。194Claude Code 會在不需重新啟動的情況下,將大多數設定更新套用至執行中的工作階段。部分更新僅在下次啟動時套用,包括 OpenTelemetry 匯出器組態、`model` 鍵,以及從 `env` 區塊中移除變數。
195 195
196### 傳遞設定中的無效項目196### 傳遞設定中的無效項目
197 197
198當承載的一部分無法通過結構描述驗證時,Claude Code 會顯示驗證錯誤並套用每個剩餘的有效設定;[受管設定中的無效項目](/docs/zh-TW/managed-settings#invalid-entries-in-managed-settings)說明它會捨棄什麼以及哪些金鑰會回退到更嚴格的值。需要 Claude Code v2.1.169 或更新版本。198當 payload 的一部分未通過 schema 驗證時,Claude Code 會顯示驗證錯誤,並套用其餘所有有效的設定;[受管設定中的無效項目](/docs/zh-TW/managed-settings.md#invalid-entries-in-managed-settings)說明了它會捨棄哪些內容,以及哪些鍵會回退至較嚴格的值。需要 Claude Code v2.1.169 或更新版本。
199 199
200伺服器管理的傳遞新增這些行為:200伺服器受管傳遞另外具有以下行為:
201 201
202* 在 `~/.claude/remote-settings.json` 中的快取上執行的啟動會以寫入快取的擷取方式處理無效項目:202* 以 `~/.claude/remote-settings.json` 快取執行的啟動,會以寫入該快取的擷取相同的方式處理無效項目:
203 * 無法通過驗證的項目會保持被捨棄。203 * 未通過驗證的項目會持續被捨棄。
204 * [失敗關閉的金鑰](/docs/zh-TW/managed-settings#keys-that-fail-closed)會保持其更嚴格的值。204 * [失敗即關閉的鍵](/docs/zh-TW/managed-settings.md#keys-that-fail-closed)會保留其較嚴格的值。
205 * 無效的 `cleanupPeriodDays` 或 `desktopSessionCleanupPeriodDays` 值會保留在快取副本中,永遠不會被套用。205 * 無效的 `cleanupPeriodDays` 或 `desktopSessionCleanupPeriodDays` 值會保留在快取副本中,且永遠不會套用。
206* 當以下三項都為真時,Claude Code 不會套用承載中的任何內容,並保持快取不變:206* 當以下三項條件全部成立時,Claude Code 不會套用 payload 中的任何內容,並保持快取不變:
207 207
208 * 承載中的每個設定都無法通過驗證。208 * payload 中的每個設定都未通過驗證。
209 * 它們都不會回退到更嚴格的值。209 * 其中沒有任何設定回退至較嚴格的值。
210 * 承載包含除了那兩個保留金鑰之外的金鑰。210 * payload 包含上述兩個保留期鍵以外的鍵。
211 211
212 啟動通知、`/status` 和 `claude doctor` 會報告[失敗的載入](/docs/zh-TW/errors#remote-managed-settings-failed-to-load),原因為 `no setting in the server response could be applied as written`,該項目會說明工作階段執行的原則。[強制執行失敗關閉啟動](#enforce-fail-closed-startup)的用戶端會改為在啟動時結束。212 此時啟動通知、`/status` 和 `claude doctor` 會回報[載入失敗](/docs/zh-TW/errors.md#remote-managed-settings-failed-to-load),原因為 `no setting in the server response could be applied as written`,且該項目會說明工作階段執行時所依據的政策。[強制失敗即關閉的啟動](#enforce-fail-closed-startup)的用戶端則會改為在啟動時結束。
213* [安全核准對話方塊](#security-approval-dialogs)會評估已修復的承載,因此被移除的無效項目永遠不會被呈現以供核准,也永遠不會執行。213* [安全性核准對話框](#security-approval-dialogs)會評估挽救後的 payload,因此被移除的無效項目永遠不會呈現供核准,也永遠不會執行。
214 214
215若要偵錯傳遞問題,請執行 `claude --debug-file <path>` 並在日誌中搜尋 `Remote settings`。在將承載變更推出到組織之前,請在測試機器上使用 `claude doctor` 驗證承載變更。215若要偵錯傳遞問題,請執行 `claude --debug-file <path>` 並在日誌中搜尋 `Remote settings`。在將 payload 變更推出至組織之前,請先在測試電腦上使用 `claude doctor` 驗證。
216 216
217### 強制執行失敗關閉啟動217### 強制失敗即關閉的啟動
218 218
219根據預設,如果遠端設定擷取在啟動時失敗,CLI 會使用上次成功擷取時快取的設定繼續執行,但 [Claude Code 保留的值](#fetch-and-caching-behavior)除外,這些值在擷取成功之前不會套用。在從未擷取過它們的機器上,CLI 會在沒有伺服器管理的設定的情況下繼續,仍然會套用裝置上的任何[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms)。219預設情況下,如果遠端設定擷取在啟動時失敗,CLI 會使用上次成功擷取時快取的設定繼續執行,但 Claude Code 在擷取成功前[暫緩的值](#fetch-and-caching-behavior)除外。在從未擷取過設定的電腦上,CLI 會在沒有伺服器受管設定的情況下繼續執行,並仍會套用裝置上的任何[端點受管設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms)。
220 220
221若要停止用戶端在快取或不存在的伺服器管理的設定上啟動,請在您的受管設定中設定 `forceRemoteSettingsRefresh: true`。221若要阻止用戶端在快取或缺少伺服器受管設定的情況下啟動,請在受管設定中設定 `forceRemoteSettingsRefresh: true`。
222 222
223透過[Claude 應用程式閘道](#platform-availability)登入的用戶端會等待啟動擷取,無論您是否設定此設定,並按如下方式處理失敗的擷取:223透過 [Claude apps 閘道](#platform-availability)登入的用戶端無論是否設定此項,都會等待啟動時的擷取,並依下列方式處理失敗的擷取:
224 224
225* 如果閘道以 `401` 回答有人值守的互動啟動,且此設定已關閉,閘道已結束該登入。Claude Code 會列印 [`Cloud gateway session expired — run /login to reconnect.`](/docs/zh-TW/errors#cloud-gateway-session-expired),並開啟未登入閘道的工作階段,直到使用者執行 `/login`。225* 如果閘道以 `401` 回應有人操作的互動式啟動,且此設定為關閉,表示閘道已結束該次登入。Claude Code 會顯示 [`Cloud gateway session expired — run /login to reconnect.`](/docs/zh-TW/errors#cloud-gateway-session-expired),並在使用者執行 `/login` 之前以登出閘道的狀態開啟工作階段。
226* 當擷取以任何其他方式失敗,或在除 `claude auth` 子命令之外的任何其他啟動類型中失敗時,用戶端會以錯誤結束。226* 當擷取以其他任何方式失敗,或在 `claude auth` 子命令以外的任何其他類型的啟動中失敗時,用戶端會以錯誤結束。
227 227
228當此設定在擷取伺服器管理的設定的工作階段中處於作用中時,CLI 會在啟動時阻止,直到遠端設定被新鮮擷取。如果擷取失敗,CLI 會結束而不是在沒有原則的情況下繼續。此設定會自我延續:一旦從伺服器傳遞,它也會在本機快取,以便後續啟動即使在新工作階段的第一次成功擷取之前也會強制執行相同的行為。[不擷取伺服器管理的設定](#platform-availability)的工作階段會在不等待的情況下啟動。228當此設定在擷取伺服器受管設定的工作階段中生效時,CLI 會在啟動時阻擋,直到重新擷取到遠端設定為止。如果擷取失敗,CLI 會結束,而不是在沒有政策的情況下繼續。此設定會自我延續:一旦從伺服器傳遞,它也會在本機快取,因此後續啟動在新工作階段首次成功擷取之前,也會強制執行相同的行為。[不擷取伺服器受管設定](#platform-availability)的工作階段則會直接啟動,不會等待。
229 229
230若要啟用此功能,請將金鑰新增到您的受管設定設定:230若要啟用此功能,請將該鍵加入您的受管設定組態:
231 231
232```json theme={null}232```json theme={null}
233{233{
235}235}
236```236```
237 237
238您也可以在[端點管理的](/docs/zh-TW/managed-settings#delivery-mechanisms) MDM 設定檔或系統 `managed-settings.json` 檔案中設定此金鑰,以在首次啟動時強制執行失敗關閉行為,在任何伺服器承載被傳遞之前。此旗標是上述[優先順序規則](#settings-precedence)的例外:當任何管理員控制的受管來源設定它時,Claude Code 會遵守它,即使快取的伺服器管理承載也存在,因此當伺服器管理的設定存在時,MDM 傳遞的值不會被忽略。238您也可以在[端點受管](/docs/zh-TW/managed-settings.md#delivery-mechanisms)的 MDM 設定檔或系統 `managed-settings.json` 檔案中設定此鍵,以便在任何伺服器 payload 送達之前的首次啟動時強制執行失敗即關閉的行為。此旗標是上述[優先順序規則](#settings-precedence)的例外:只要任何由管理員控制的受管來源設定了此旗標,Claude Code 就會遵循,即使同時存在快取的伺服器受管 payload 也是如此,因此當伺服器受管設定存在時,它不會忽略由 MDM 傳遞的值。
239 239
240當 [`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 提供受管設定時,其輸出會取代 Claude Code 在啟動後讀取的金鑰的所有其他受管來源。對於 Claude Code 讀取此金鑰的來源,請參閱[其設定項目](/docs/zh-TW/settings-reference#forceremotesettingsrefresh)。`policyHelper` 項目說明 Claude Code 讀取協助程式的來源以及它何時執行。240當 [`policyHelper`](/docs/zh-TW/settings-reference#policyhelper) 提供受管設定時,對於 Claude Code 在啟動後讀取的鍵,其輸出會取代所有其他受管來源。關於 Claude Code 從哪些來源讀取此鍵,請參閱[其設定項目](/docs/zh-TW/settings-reference.md#forceremotesettingsrefresh)。`policyHelper` 項目說明了 Claude Code 從哪些來源讀取該 helper 以及其執行時機。
241 241
242設定擷取也會傳送 `Cache-Control: no-cache` 標頭,以便中間 HTTP Proxy 不會提供過時的回應。242設定擷取也會傳送 `Cache-Control: no-cache` 標頭,以免中介的 HTTP 代理伺服器提供過時的回應。
243 243
244在啟用此設定之前,請確保您的網路原則允許連線到 `api.anthropic.com`。如果該端點無法到達,CLI 會在啟動時結束,使用者無法啟動 Claude Code。244啟用此設定之前,請確認您的網路政策允許連線至 `api.anthropic.com`。如果無法連線至該端點,CLI 會在啟動時結束,使用者將無法啟動 Claude Code。
245 245
246`claude auth` 子命令(例如 `claude auth login`)不受此檢查限制,也不受閘道啟動結束限制,因此使用者可以在過期認證是設定擷取失敗原因時重新驗證。246`claude auth` 子命令(例如 `claude auth login`)不受此檢查及閘道啟動結束的限制,因此當憑證過期是設定擷取失敗的原因時,使用者仍可重新驗證。
247 247
248### 安全核准對話方塊248### 安全性核准對話框
249 249
250某些可能造成安全風險的設定需要明確的使用者核准才能在互動工作階段中套用:250某些可能帶來安全風險的設定,在 Claude Code 於互動式工作階段中套用之前,需要使用者明確核准:
251 251
252* **Shell 命令設定**:執行 shell 命令的設定,例如 `apiKeyHelper`、`statusLine` 和 `otelHeadersHelper`252* **Shell 命令設定**:執行 shell 命令的設定,例如 `apiKeyHelper`、`statusLine` 和 `otelHeadersHelper`
253* **沙箱二進位設定**:`sandbox.bwrapPath`、`sandbox.socatPath` 和 `sandbox.ripgrep`。這些設定中的每一個都指向可執行檔,Claude Code 會執行該可執行檔253* **沙箱二進位檔設定**:`sandbox.bwrapPath`、`sandbox.socatPath` 和 `sandbox.ripgrep`。這些設定各自指向一個可執行檔,而 Claude Code 會執行該可執行檔
254* **沙箱網路和隔離設定**:[沙箱](/docs/zh-TW/sandboxing)設定,讓沙箱 Proxy 讀取、重新路由或驗證流量,或削弱沙箱的隔離:`sandbox.network.tlsTerminate`、`sandbox.network.httpProxyPort`、`sandbox.network.socksProxyPort`、`sandbox.credentials`、`sandbox.allowAppleEvents`、`sandbox.enableWeakerNestedSandbox`、`sandbox.enableWeakerNetworkIsolation`、`sandbox.filesystem.disabled`、`sandbox.network.allowAllUnixSockets`、`sandbox.network.allowUnixSockets` 和 `sandbox.network.allowMachLookup`。僅包含 `deny` 規則的 `sandbox.credentials` 區塊不需要核准,因為它會限制沙箱,而不會給 Proxy 認證。在 v2.1.251 之前,Claude Code 會在沒有核准的情況下套用這些設定254* **沙箱網路與隔離設定**:讓沙箱代理伺服器能讀取、重新路由或驗證流量,或削弱沙箱隔離的[沙箱](/docs/zh-TW/sandboxing.md)設定:`sandbox.network.tlsTerminate`、`sandbox.network.httpProxyPort`、`sandbox.network.socksProxyPort`、`sandbox.credentials`、`sandbox.allowAppleEvents`、`sandbox.allowNestedUserNamespaces`、`sandbox.enableWeakerNestedSandbox`、`sandbox.enableWeakerNetworkIsolation`、`sandbox.filesystem.disabled`、`sandbox.network.allowAllUnixSockets`、`sandbox.network.allowUnixSockets` 和 `sandbox.network.allowMachLookup`。僅包含 `deny` 規則的 `sandbox.credentials` 區塊不需要核准,因為它只是限制沙箱,並未提供憑證給代理伺服器。在 v2.1.251 之前,Claude Code 會在未經核准的情況下套用這些設定
255* **自訂環境變數**:傳遞的 `env` 變數,需要使用者核准,例如 Proxy 和基底 URL 變數;請參閱[環境變數和核准對話方塊](#environment-variables-and-the-approval-dialog)255* **自訂環境變數**:需要使用者核准的傳遞 `env` 變數,例如代理伺服器與 base-URL 變數;請參閱[環境變數與核准對話框](#environment-variables-and-the-approval-dialog)
256* **Hook 設定**:任何 hook 定義256* **Hook 組態**:任何 hook 定義
257 257
258當這些設定存在時,使用者會看到安全對話方塊,說明正在設定的內容。使用者必須核准才能繼續。如果使用者拒絕設定,Claude Code 會結束。258當這些設定存在時,使用者會看到一個安全性對話框,說明正在設定的內容。使用者必須核准才能繼續。如果使用者拒絕這些設定,Claude Code 會結束。
259 259
260透過 [`claudeMd`](/docs/zh-TW/settings-reference#claudemd) 金鑰傳遞的受管 CLAUDE.md 不需要核准,因為它是 Claude 的指示文字,而不是 Claude Code 執行的命令。Claude Code 仍然會檢查 Claude 在遵循這些指示時使用的工具的[權限](/docs/zh-TW/permissions)。在 v2.1.260 之前,`claudeMd` 值需要核准。260透過 [`claudeMd`](/docs/zh-TW/settings-reference#claudemd) 鍵傳遞的受管 CLAUDE.md 不需要核准,因為它是給 Claude 的指令文字,而不是 Claude Code 執行的命令。Claude Code 仍會檢查 Claude 在遵循這些指令時所使用工具的[權限](/docs/zh-TW/permissions.md)。在 v2.1.260 之前,`claudeMd` 值也需要核准。
261 261
262#### 核准記憶262#### 核准記憶
263 263
264Claude Code 會在您的設定目錄 `~/.claude` 中記錄您的核准,除非您設定 [`CLAUDE_CONFIG_DIR`](/docs/zh-TW/env-vars)。它記錄的內容取決於設定擷取使用的認證:264Claude Code 會將您的核准記錄在您的設定目錄中,除非您設定了 [`CLAUDE_CONFIG_DIR`](/docs/zh-TW/env-vars),否則該目錄為 `~/.claude`。它記錄的內容取決於設定擷取所使用的憑證:
265 265
266* **由 `/login` 或 `claude auth login` 儲存的 claude.ai 登入,或[無金鑰主控台登入](/docs/zh-TW/authentication#sign-in-without-an-api-key)**:每個組織一次核准,由最近核准的帳戶持有。266* **由 `/login` 或 `claude auth login` 儲存的 claude.ai 登入,或[無金鑰 Console 登入](/docs/zh-TW/authentication.md#sign-in-without-an-api-key)**:每個組織一個核准,由最近一次核准的帳戶持有。
267* **[Claude 應用程式閘道](/docs/zh-TW/claude-apps-gateway)登入**:每個閘道一次核准。267* **[Claude apps 閘道](/docs/zh-TW/claude-apps-gateway)登入**:每個閘道一個核准。
268 268
269 如果您登出並重新登入同一個閘道,Claude Code 在需要核准的設定保持不變時不會再次顯示對話方塊。當這些設定變更、您登入不同的閘道,以及當您接受同一閘道的新憑證時,Claude Code 會再次顯示它。269 如果您登出後再登入同一個閘道,只要需要核准的設定未變更,Claude Code 就不會再次顯示對話框。當這些設定變更、您登入不同的閘道,或您為同一個閘道接受新的憑證時,Claude Code 會再次顯示對話框。
270 270
271 Claude Code 不會為透過純 HTTP 到達的迴圈開發閘道儲存任何核准,因此對話方塊會在每次登入後再次出現。271 對於透過純 HTTP 連線的本機迴路開發閘道,Claude Code 不會儲存核准,因此每次登入後都會再次出現對話框。
272* **任何其他認證**,例如 API 金鑰或 `CLAUDE_CODE_OAUTH_TOKEN`:一次核准傳遞的設定,與該設定目錄中設定的快取副本一起保留。當需要核准的設定變更,以及在您執行 `/logout` 或 `claude auth logout` 後(其中任何一個都會刪除快取副本),Claude Code 會再次顯示對話方塊。272* **任何其他憑證**,例如 API 金鑰或 `CLAUDE_CODE_OAUTH_TOKEN`:對傳遞的設定一個核准,與該設定目錄中的設定快取副本一起保存。當需要核准的設定變更時,以及在您執行 `/logout` 或 `claude auth logout`(兩者都會刪除快取副本)之後,Claude Code 會再次顯示對話框。
273 273
274`sandbox.credentials` 或 `sandbox.network.tlsTerminate` 的核准也涵蓋這些相同傳遞設定中的 [`sandbox.network.allowedDomains`](/docs/zh-TW/settings-reference#sandbox-network-alloweddomains) 項目,因為兩個設定都作用於該允許清單。當您的管理員新增或移除其中一個項目時,對話方塊會再次出現,即使 `sandbox.network.allowedDomains` 本身不需要核准。274對 `sandbox.credentials` 或 `sandbox.network.tlsTerminate` 的核准,也涵蓋同一份傳遞設定中的 [`sandbox.network.allowedDomains`](/docs/zh-TW/settings-reference#sandbox-network-alloweddomains) 項目,因為這兩個設定都作用於該允許清單。當您的管理員新增或移除其中一個項目時,對話框會再次出現,即使 `sandbox.network.allowedDomains` 本身不需要核准。
275 275
276使用已儲存的 claude.ai 登入:276使用已儲存的 claude.ai 登入時:
277 277
278* 如果您登出並重新登入,或切換到另一個組織,稍後返回,Claude Code 在這些設定保持不變時不會再次顯示對話方塊,除非另一個帳戶在同一設定目錄中為該組織核准了它們。278* 如果您登出後再登入,或切換到另一個組織後再返回,只要這些設定未變更,Claude Code 就不會再次顯示對話框,除非在此期間另一個帳戶已在同一個設定目錄中為該組織核准過這些設定。
279* 如果您使用不同的帳戶登入同一個組織,Claude Code 即使設定保持不變也會再次顯示對話方塊。該帳戶的核准會取代前一個,因此當您切換回去時,Claude Code 會再次顯示對話方塊。279* 如果您使用不同的帳戶登入同一個組織,即使設定未變更,Claude Code 也會再次顯示對話框。該帳戶的核准會取代先前的核准,因此當您切換回來時,Claude Code 會再顯示一次對話框。
280 280
281Claude Code 無法總是顯示對話方塊。下面的每個案例都說明當它無法顯示時哪些設定會套用,以及您何時會再次看到對話方塊:281Claude Code 並非總是能顯示對話框。以下每種情況都說明了無法顯示時套用哪些設定,以及您下次何時會看到對話框:
282 282
283* **無法顯示對話方塊的互動工作階段**:Claude Code 不會套用傳遞的設定,並保留最後核准的設定。對話方塊會在下一個可以顯示它的工作階段中出現。283* **無法顯示對話框的互動式工作階段**:Claude Code 不會套用傳遞的設定,並保留上次核准的設定。對話框會出現在下一個能顯示它的工作階段中。
284* **`claude install` 或 `claude update`**:Claude Code 在任何命令期間都不會顯示對話方塊。該命令會使用最後核准的設定執行,對話方塊會在您的下一個互動工作階段中出現。如果 Claude Code 在啟動時等待設定擷取,例如設定 [`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup) 或在 [Claude 應用程式閘道](/docs/zh-TW/claude-apps-gateway)部署上,它會改為在命令期間顯示對話方塊,並且從管道執行的安裝執行會失敗;請參閱[安裝期間的 `Raw mode is not supported`](/docs/zh-TW/troubleshoot-install#raw-mode-is-not-supported-during-install)。在 v2.1.246 之前,Claude Code 也嘗試在這些命令期間顯示對話方塊。284* **`claude install` 或 `claude update`**:Claude Code 在這兩個命令執行期間都不會顯示對話框。命令會以上次核准的設定執行,對話框則會出現在您的下一個互動式工作階段中。如果 Claude Code 在啟動時等待設定擷取,例如設定了 [`forceRemoteSettingsRefresh`](#enforce-fail-closed-startup) 或在 [Claude apps 閘道](/docs/zh-TW/claude-apps-gateway)部署上,它會改為在命令執行期間顯示對話框,而從管道執行的安裝會失敗;請參閱[安裝期間出現 `Raw mode is not supported`](/docs/zh-TW/troubleshoot-install#raw-mode-is-not-supported-during-install)。在 v2.1.246 之前,Claude Code 也會嘗試在這兩個命令執行期間顯示對話框。
285* **錯誤在您回答前關閉對話方塊**:Claude Code 不會套用傳遞的設定,並保留最後核准的設定。它會在下一個可以顯示它的工作階段中再次顯示對話方塊。285* **輸出至終端機但無法從鍵盤讀取的 `claude plugin` 命令**:當 Claude Code 未在啟動時等待設定擷取時,該命令不會套用傳遞的設定。若沒有[快取的設定](#fetch-and-caching-behavior),變更您的外掛或市集的命令會[以錯誤停止](/docs/zh-TW/errors.md#managed-settings-need-your-approval)。若有快取的設定,命令會以上次核准的設定執行。對話框會在您下次於終端機中執行 `claude` 時出現。
286* **非互動執行**,例如 `claude -p`、Agent SDK 工作階段,或 VS Code 擴充功能的聊天面板或桌面應用程式的 Code 標籤中的工作階段:Claude Code 無法顯示對話方塊,因此當傳遞的設定需要核准時,它僅針對該執行套用它們。它不會將它們記錄為已核准或寫入[本機快取](#fetch-and-caching-behavior),下一個互動工作階段會顯示對話方塊。在使用者在互動工作階段中核准之前,每個非互動執行都會在啟動時再次擷取設定。在 v2.1.207 之前,非互動執行會將設定儲存為已核准,因此後來的互動工作階段永遠不會為它們顯示對話方塊。
287 286
288#### 環境變數和核准對話方塊287 當您以管道傳送或重新導向該命令的輸入,且在 macOS 和 Linux 上它也無法開啟 `/dev/tty` 時,該命令就無法從鍵盤讀取。如果您也以管道傳送或重新導向其輸出,該次執行則會改為非互動式,而傳遞的設定只會在該次執行中套用。
288* **錯誤在您回答之前關閉了對話框**:Claude Code 不會套用傳遞的設定,並保留上次核准的設定。它會在下一個能顯示對話框的工作階段中再次顯示。
289* **非互動式執行**,例如 `claude -p`、Agent SDK 工作階段,或 VS Code 擴充功能聊天面板或桌面應用程式 Code 分頁中的工作階段:Claude Code 無法顯示對話框,因此當傳遞的設定需要核准時,它只會在該次執行中套用這些設定。它不會將這些設定記錄為已核准,也不會將其寫入[本機快取](#fetch-and-caching-behavior),而下一個互動式工作階段會顯示對話框。在使用者於互動式工作階段中核准之前,每次非互動式執行都會在啟動時再次擷取設定。在 v2.1.207 之前,非互動式執行會將設定儲存為已核准,因此之後的互動式工作階段永遠不會為這些設定顯示對話框。
289 290
290Claude Code 會套用某些傳遞的 `env` 變數,而不會向使用者顯示核准對話方塊,包括:291#### 環境變數與核准對話框
291 292
292* 功能和命令切換293Claude Code 會在不向使用者顯示核准對話框的情況下套用部分傳遞的 `env` 變數,包括:
293* 模型選擇和行為設定,例如 `ANTHROPIC_MODEL`、`DISABLE_PROMPT_CACHING` 和 `CLAUDE_CODE_EFFORT_LEVEL`
294* 內容視窗和壓縮設定,例如 `DISABLE_AUTO_COMPACT`
295* 終端 UI 和協助工具選項
296* 數值限制、預算和逾時
297 294
298其他傳遞的變數可能需要使用者的核准才能生效;非空 Proxy、基底 URL 或 `OTEL_EXPORTER_OTLP_ENDPOINT` 值總是會。當傳遞的變數需要核准時,對話方塊會命名它,因此使用者會看到原則要求設定的確切內容。在 v2.1.218 之前,Claude Code 套用的變數較少而不詢問使用者,因此 `DISABLE_AUTO_COMPACT` 等設定在任何非空值時都會觸發對話方塊。295* 功能與命令切換
296* 模型選擇與行為設定,例如 `ANTHROPIC_MODEL`、`DISABLE_PROMPT_CACHING` 和 `CLAUDE_CODE_EFFORT_LEVEL`
297* 上下文視窗與壓縮設定,例如 `DISABLE_AUTO_COMPACT`,但不包括 `CLAUDE_CODE_DISABLE_1M_CONTEXT`
298* 終端機 UI 與無障礙選項
299* 數值限制、預算與逾時
299 300
300Claude Code 根據傳遞的值而不是變數名稱決定四個隱私切換是否需要核准:`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_ERROR_REPORTING`、`DISABLE_TELEMETRY` 和 `DO_NOT_TRACK`。`1` 或 `true` 等真值只會關閉追蹤、報告或其他非必要流量,因此 Claude Code 會在不詢問使用者的情況下套用它。對於任何其他非空值,Claude Code 會顯示對話方塊。在 v2.1.218 之前,除了 `DO_NOT_TRACK` 外,所有這些都在任何值時不經核准套用,`DO_NOT_TRACK` 在任何非空值時觸發對話方塊。301其他傳遞的變數可能需要使用者核准才會生效。例如,在互動式工作階段中,以下變數只要是非空值就一律需要核准:
301 302
302Claude Code 也根據傳遞的值決定 [`API_FORCE_IDLE_TIMEOUT`](/docs/zh-TW/env-vars) 是否需要核准:真值只會開啟[主體閒置逾時](/docs/zh-TW/network-config#streaming-idle-watchdogs),因此 Claude Code 會在不詢問使用者的情況下套用它。對於任何其他非空值,Claude Code 會顯示對話方塊。在 v2.1.248 之前,任何非空值都會觸發對話方塊。303* 代理伺服器或 base-URL 變數
304* `OTEL_EXPORTER_OTLP_ENDPOINT`
305* `CLAUDE_CODE_DISABLE_1M_CONTEXT`
303 306
304[`ANTHROPIC_CUSTOM_HEADERS`](/docs/zh-TW/env-vars#variables) 是否需要核准也取決於傳遞的值。僅標記請求的標頭(例如 `Accept-Language`)會在沒有對話方塊的情況下套用。命名認證、組織或租戶選擇器、路由或主機覆蓋,或 API 行為標頭(例如 `Authorization`、`X-Api-Key`、`Host`、`anthropic-beta` 或 `X-Amzn-Bedrock-*` 標頭)的行需要核准。命名不是有效 HTTP 標頭權杖的行,或其值包含 HTTP 標頭無法攜帶的字元的行也需要核准。檢查會符合標頭名稱內的單字,所以包含 `client` 和 `version` 的 `X-Client-Version` 也需要核准。在 v2.1.251 之前,任何 `ANTHROPIC_CUSTOM_HEADERS` 值都會在沒有核准的情況下套用。307當傳遞的變數需要核准時,對話框會列出其名稱,讓使用者確切看到政策要求設定的內容。在 v2.1.218 之前,Claude Code 在不詢問使用者的情況下套用的變數較少,因此像 `DISABLE_AUTO_COMPACT` 這樣的設定只要是非空值就會觸發對話框。
305 308
306[`ENABLE_BETA_TRACING_DETAILED`](/docs/zh-TW/env-vars#variables) 或 [`OTEL_LOG_RAW_API_BODIES`](/docs/zh-TW/env-vars#variables) 的 `0` 或 `false` 等假值會在沒有對話方塊的情況下套用,因為它只會關閉詳細追蹤或原始 API 主體擷取。任何其他非空值都需要核准。309Claude Code 會依據傳遞的值而非變數名稱,來決定四個隱私切換是否需要核准:`CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC`、`DISABLE_ERROR_REPORTING`、`DISABLE_TELEMETRY` 和 `DO_NOT_TRACK`。真值(例如 `1` 或 `true`)只會關閉追蹤、回報或其他非必要流量,因此 Claude Code 會在不詢問使用者的情況下套用。對於任何其他非空值,Claude Code 會顯示對話框。在 v2.1.218 之前,除了 `DO_NOT_TRACK` 之外,這些變數在任何值下都無需核准即可套用,而 `DO_NOT_TRACK` 只要是非空值就會觸發對話框。
310
311Claude Code 也會依據傳遞的值來決定 [`API_FORCE_IDLE_TIMEOUT`](/docs/zh-TW/env-vars) 是否需要核准:真值只會開啟[主體閒置逾時](/docs/zh-TW/network-config.md#streaming-idle-watchdogs),因此 Claude Code 會在不詢問使用者的情況下套用。對於任何其他非空值,Claude Code 會顯示對話框。在 v2.1.248 之前,任何非空值都會觸發對話框。
312
313[`ANTHROPIC_CUSTOM_HEADERS`](/docs/zh-TW/env-vars#variables) 是否需要核准也取決於傳遞的值。僅用於標記請求的標頭(例如 `Accept-Language`)無需對話框即可套用。指定憑證、組織或租用戶選擇器、路由或主機覆寫,或 API 行為標頭的行(例如 `Authorization`、`X-Api-Key`、`Host`、`anthropic-beta` 或 `X-Amzn-Bedrock-*` 標頭)需要核准。當某行的名稱不是有效的 HTTP 標頭 token,或其值包含 HTTP 標頭無法承載的字元時,該行也需要核准。此檢查會比對標頭名稱內的字詞,因此包含 `client` 和 `version` 的 `X-Client-Version` 也需要核准。在 v2.1.251 之前,任何 `ANTHROPIC_CUSTOM_HEADERS` 值都無需核准即可套用。
314
315[`ENABLE_BETA_TRACING_DETAILED`](/docs/zh-TW/env-vars#variables) 或 [`OTEL_LOG_RAW_API_BODIES`](/docs/zh-TW/env-vars#variables) 的假值(例如 `0` 或 `false`)無需對話框即可套用,因為它只會關閉詳細追蹤或原始 API 主體擷取。這兩個變數的任何其他非空值都需要核准。
307 316
308## 平台可用性317## 平台可用性
309 318
312* Team 或 Enterprise OAuth 登入321* Team 或 Enterprise OAuth 登入
313* 透過 `CLAUDE_CODE_OAUTH_TOKEN` 提供的 OAuth token322* 透過 `CLAUDE_CODE_OAUTH_TOKEN` 提供的 OAuth token
314* 直接設定的 API 金鑰323* 直接設定的 API 金鑰
315* `user_oauth` [Anthropic 設定檔](/docs/zh-TW/authentication#anthropic-profiles-and-federation-credentials),除非該設定檔將 `base_url` 設為 Anthropic API 以外的位址。需要 Claude Code v2.1.257 或更新版本。324* `user_oauth` [Anthropic 設定檔](/docs/zh-TW/authentication.md#anthropic-profiles-and-federation-credentials),除非該設定檔將 `base_url` 設為 Anthropic API 以外的位址。需要 Claude Code v2.1.257 或更新版本。
316 325
317由 [`apiKeyHelper`](/docs/zh-TW/settings-reference#apikeyhelper) 指令碼傳回的金鑰,以及 [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) 憑證,都不會觸發設定擷取。326由 [`apiKeyHelper`](/docs/zh-TW/settings-reference#apikeyhelper) 指令碼傳回的金鑰,以及 [Workload Identity Federation](https://platform.claude.com/docs/en/manage-claude/workload-identity-federation) 憑證,都不會觸發設定擷取。
318 327
319工作階段會收到其用於身分驗證之憑證所屬組織的受管設定。來自 [Claude Console](https://platform.claude.com) 的 API 金鑰屬於建立該金鑰的 Console 組織,而該組織與您的 claude.ai Team 或 Enterprise 組織是不同的組織。因此,您在 claude.ai 管理設定中設定的內容,不會套用至使用該金鑰進行身分驗證的工作階段,例如使用貴公司 Console API 金鑰的 CI 作業。若要將這些設定套用至該作業,請使用下列其中一個選項。OAuth token 選項不適用於以 [`--bare`](/docs/zh-TW/headless#start-faster-with-bare-mode) 執行的作業,因為 bare 模式不會讀取 `CLAUDE_CODE_OAUTH_TOKEN`。328工作階段會收到其用於身分驗證之憑證所屬組織的受管設定。來自 [Claude Console](https://platform.claude.com) 的 API 金鑰屬於建立該金鑰的 Console 組織,而該組織與您的 claude.ai Team 或 Enterprise 組織是不同的組織。因此,您在 claude.ai 管理設定中設定的內容,不會套用至使用該金鑰進行身分驗證的工作階段,例如使用貴公司 Console API 金鑰的 CI 作業。若要將這些設定套用至該作業,請使用下列其中一個選項。OAuth token 選項不適用於以 [`--bare`](/docs/zh-TW/headless#start-faster-with-bare-mode) 執行的作業,因為 bare 模式不會讀取 `CLAUDE_CODE_OAUTH_TOKEN`。
320 329
321* **OAuth token**:使用 [`claude setup-token`](/docs/zh-TW/authentication#generate-a-long-lived-token) 產生 token,為您的 Team 或 Enterprise 組織授權該 token,並在作業的環境中將其設為 `CLAUDE_CODE_OAUTH_TOKEN`。從該環境中移除任何[優先於](/docs/zh-TW/authentication#authentication-precedence)該 token 的憑證,例如 `ANTHROPIC_API_KEY`。330* **OAuth token**:使用 [`claude setup-token`](/docs/zh-TW/authentication#generate-a-long-lived-token) 產生 token,為您的 Team 或 Enterprise 組織授權該 token,並在作業的環境中將其設為 `CLAUDE_CODE_OAUTH_TOKEN`。從該環境中移除任何[優先於](/docs/zh-TW/authentication.md#authentication-precedence)該 token 的憑證,例如 `ANTHROPIC_API_KEY`。
322* **端點受管設定**:將[受管設定檔](/docs/zh-TW/managed-settings#delivery-mechanisms)部署至執行該作業的機器。331* **端點受管設定**:將[受管設定檔](/docs/zh-TW/managed-settings.md#delivery-mechanisms)部署至執行該作業的機器。
323 332
324在 Claude Desktop 應用程式的 [Cowork](https://claude.com/docs/cowork/overview) 工作階段中,即使使用者以 Team 或 Enterprise 帳戶登入,Claude Code 也不會從 claude.ai 管理主控台擷取伺服器受管設定。[政策的套用位置與時機](/docs/zh-TW/managed-settings#where-and-when-a-policy-applies)說明了哪些政策會套用至使用者機器上的 Cowork 工作階段以及遠端 Cowork 工作階段。當 Cowork 使用者在 claude.ai 上從 git 儲存庫新增市集,或從 Cowork 中的 **Customize** 新增市集時,claude.ai 仍會自行套用您的 [`strictKnownMarketplaces`](/docs/zh-TW/settings-reference#strictknownmarketplaces) 和 [`blockedMarketplaces`](/docs/zh-TW/settings-reference#blockedmarketplaces) 清單。[限制的運作方式](/docs/zh-TW/plugins/org#restrict-what-users-can-install)說明了該檢查。333在 Claude Desktop 應用程式的 [Cowork](https://claude.com/docs/cowork/overview) 工作階段中,即使使用者以 Team 或 Enterprise 帳戶登入,Claude Code 也不會從 claude.ai 管理主控台擷取伺服器受管設定。[政策的套用位置與時機](/docs/zh-TW/managed-settings.md#where-and-when-a-policy-applies)說明了哪些政策會套用至使用者機器上的 Cowork 工作階段以及遠端 Cowork 工作階段。當 Cowork 使用者在 claude.ai 上從 git 儲存庫新增市集,或從 Cowork 中的 **Customize** 新增市集時,claude.ai 仍會自行套用您的 [`strictKnownMarketplaces`](/docs/zh-TW/settings-reference#strictknownmarketplaces) 和 [`blockedMarketplaces`](/docs/zh-TW/settings-reference#blockedmarketplaces) 清單。[限制的運作方式](/docs/zh-TW/plugins/org.md#restrict-what-users-can-install)說明了該檢查。
325 334
326如果您在 shell 中匯出 `CLAUDE_CODE_USE_*` 提供者變數或非預設的 `ANTHROPIC_BASE_URL`,Claude Code 會為您的工作階段略過設定擷取。[`claude doctor` 和 `/status` 會回報已略過的擷取及其原因](#verify-settings-delivery)。335如果您在 shell 中匯出 `CLAUDE_CODE_USE_*` 提供者變數或非預設的 `ANTHROPIC_BASE_URL`,Claude Code 會為您的工作階段略過設定擷取。[`claude doctor` 和 `/status` 會回報已略過的擷取及其原因](#verify-settings-delivery)。
327 336
328您無法使用伺服器受管的 `env` 區塊清除該匯出,因為該區塊是透過被該匯出阻止的擷取而送達的。[端點受管設定](/docs/zh-TW/managed-settings#delivery-mechanisms)的 `env` 區塊也無法恢復擷取:Claude Code 會在套用受管 `env` 區塊之前檢查資格,因此端點受管的值會變更工作階段的提供者選擇,但擷取仍會被略過。337您無法使用伺服器受管的 `env` 區塊清除該匯出,因為該區塊是透過被該匯出阻止的擷取而送達的。[端點受管設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms)的 `env` 區塊也無法恢復擷取:Claude Code 會在套用受管 `env` 區塊之前檢查資格,因此端點受管的值會變更工作階段的提供者選擇,但擷取仍會被略過。
329 338
330若要恢復伺服器受管的傳遞,請從您的 shell 中移除該匯出,或在您的使用者設定 `env` 區塊中將該變數設為 `""`,該區塊會在資格檢查之前套用。若要在不依賴使用者變更其 shell 的情況下強制執行政策,請改為透過端點受管頻道傳遞設定。339若要恢復伺服器受管的傳遞,請從您的 shell 中移除該匯出,或在您的使用者設定 `env` 區塊中將該變數設為 `""`,該區塊會在資格檢查之前套用。若要在不依賴使用者變更其 shell 的情況下強制執行政策,請改為透過端點受管頻道傳遞設定。
331 340
332對於 Amazon Bedrock、Google Cloud 的 Agent Platform、Microsoft Foundry 以及 [Claude Platform on AWS](/docs/zh-TW/claude-platform-on-aws) 部署,自行託管的 [Claude apps 閘道](/docs/zh-TW/claude-apps-gateway)提供等效的遠端受管設定傳遞:透過閘道登入的用戶端會從閘道而非 `api.anthropic.com` 擷取受管設定。啟動時的失敗處理方式有所不同:無法連線至閘道的閘道用戶端會以錯誤結束,而不會退回使用快取的設定;而每小時的背景重新整理在兩個頻道上都採用失敗開放(fail-open)模式,也就是重新整理失敗時仍允許工作階段繼續運作。341對於 Amazon Bedrock、Google Cloud 的 Agent Platform、Microsoft Foundry 以及 [Claude Platform on AWS](/docs/zh-TW/claude-platform-on-aws.md) 部署,自行託管的 [Claude apps 閘道](/docs/zh-TW/claude-apps-gateway)提供等效的遠端受管設定傳遞:透過閘道登入的用戶端會從閘道而非 `api.anthropic.com` 擷取受管設定。啟動時的失敗處理方式有所不同:無法連線至閘道的閘道用戶端會以錯誤結束,而不會退回使用快取的設定;而每小時的背景重新整理在兩個頻道上都採用失敗開放(fail-open)模式,也就是重新整理失敗時仍允許工作階段繼續運作。
333 342
334## 稽核記錄343## 稽核記錄
335 344
347| 使用者刪除快取的設定檔 | [首次啟動行為](#fetch-and-caching-behavior)發生 |356| 使用者刪除快取的設定檔 | [首次啟動行為](#fetch-and-caching-behavior)發生 |
348| 使用者執行修改過的 Claude Code 二進位檔 | 能夠執行修改過用戶端的使用者可以略過任何用戶端控制 |357| 使用者執行修改過的 Claude Code 二進位檔 | 能夠執行修改過用戶端的使用者可以略過任何用戶端控制 |
349| 使用者執行較舊的 Claude Code 版本 | 早於伺服器管理設定的版本不會擷取或套用它們 |358| 使用者執行較舊的 Claude Code 版本 | 早於伺服器管理設定的版本不會擷取或套用它們 |
350| API 無法使用 | 如果可用,快取設定會套用,但 Claude Code 會[保留某些值](#fetch-and-caching-behavior)直到擷取成功。沒有快取的情況下,Claude Code 在下次成功擷取之前不會強制執行任何伺服器管理的設定,但仍會在裝置上套用任何[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms)。使用 `forceRemoteSettingsRefresh: true` 時,CLI 會結束而不是繼續,但 [`claude auth` 子命令](#enforce-fail-closed-startup)除外。透過[Claude 應用程式閘道](#platform-availability)登入的用戶端在啟動時會結束而沒有該設定,具有相同的 `claude auth` 豁免 |359| API 無法使用 | 如果可用,快取設定會套用,但 Claude Code 會[保留某些值](#fetch-and-caching-behavior)直到擷取成功。沒有快取的情況下,Claude Code 在下次成功擷取之前不會強制執行任何伺服器管理的設定,但仍會在裝置上套用任何[端點管理的設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms)。使用 `forceRemoteSettingsRefresh: true` 時,CLI 會結束而不是繼續,但 [`claude auth` 子命令](#enforce-fail-closed-startup)除外。透過[Claude 應用程式閘道](#platform-availability)登入的用戶端在啟動時會結束而沒有該設定,具有相同的 `claude auth` 豁免 |
351| 使用者使用不同的組織進行身份驗證 | 不會為受管組織外的帳戶傳遞設定,包括使用 [Console API 金鑰](#platform-availability)進行身份驗證的工作階段 |360| 使用者使用不同的組織進行身份驗證 | 不會為受管組織外的帳戶傳遞設定,包括使用 [Console API 金鑰](#platform-availability)進行身份驗證的工作階段 |
352| 使用者設定[第三方模型提供者](#platform-availability) | 伺服器管理的設定會被略過。這包括設定 `CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_MANTLE`、`CLAUDE_CODE_USE_VERTEX`、`CLAUDE_CODE_USE_FOUNDRY`、`CLAUDE_CODE_USE_ANTHROPIC_AWS` 或非預設的 `ANTHROPIC_BASE_URL` |361| 使用者設定[第三方模型提供者](#platform-availability) | 伺服器管理的設定會被略過。這包括設定 `CLAUDE_CODE_USE_BEDROCK`、`CLAUDE_CODE_USE_MANTLE`、`CLAUDE_CODE_USE_VERTEX`、`CLAUDE_CODE_USE_FOUNDRY`、`CLAUDE_CODE_USE_ANTHROPIC_AWS` 或非預設的 `ANTHROPIC_BASE_URL` |
353| 網路流量被攔截或重新導向 | 停用的 TLS 驗證或攔截的流量可以改變用戶端接收的設定 |362| 網路流量被攔截或重新導向 | 停用的 TLS 驗證或攔截的流量可以改變用戶端接收的設定 |
354 363
355若要記錄本機設定檔的編輯,包括 `managed-settings.json`,請使用 [`ConfigChange` hooks](/docs/zh-TW/hooks#configchange)。當伺服器管理的設定到達或重新整理時,或當 MDM 設定檔或登錄原則變更時,Claude Code 不會執行它們,且 hook 無法阻止 `policy_settings` 變更。364若要記錄本機設定檔的編輯,包括 `managed-settings.json`,請使用 [`ConfigChange` hooks](/docs/zh-TW/hooks#configchange)。當伺服器管理的設定到達或重新整理時,或當 MDM 設定檔或登錄原則變更時,Claude Code 不會執行它們,且 hook 無法阻止 `policy_settings` 變更。
356 365
357若要限制使用者可以使用用戶端提供的認證存取的組織,請參閱 Claude 說明中心中的[使用租戶限制強制執行網路層級存取控制](https://support.claude.com/en/articles/13198485-enforce-network-level-access-control-with-tenant-restrictions)。如需更強的強制執行保證,請在已在 MDM 解決方案中註冊的裝置上使用[端點管理的設定](/docs/zh-TW/managed-settings#delivery-mechanisms)。366若要限制使用者可以使用用戶端提供的認證存取的組織,請參閱 Claude 說明中心中的[使用租戶限制強制執行網路層級存取控制](https://support.claude.com/en/articles/13198485-enforce-network-level-access-control-with-tenant-restrictions)。如需更強的強制執行保證,請在已在 MDM 解決方案中註冊的裝置上使用[端點管理的設定](/docs/zh-TW/managed-settings.md#delivery-mechanisms)。
358 367
359## 另請參閱368## 另請參閱
360 369
361用於管理 Claude Code 設定的相關頁面:370用於管理 Claude Code 設定的相關頁面:
362 371
363* [所有設定](/docs/zh-TW/settings-reference):每個設定鍵372* [所有設定](/docs/zh-TW/settings-reference.md):每個設定鍵
364* [Endpoint-managed settings](/docs/zh-TW/managed-settings#delivery-mechanisms):由 IT 部門部署到裝置的受管設定373* [Endpoint-managed settings](/docs/zh-TW/managed-settings.md#delivery-mechanisms):由 IT 部門部署到裝置的受管設定
365* [Authentication](/docs/zh-TW/authentication):設定使用者對 Claude Code 的存取374* [Authentication](/docs/zh-TW/authentication.md):設定使用者對 Claude Code 的存取
366* [Security](/docs/zh-TW/security):安全保護措施和最佳實踐375* [Security](/docs/zh-TW/security.md):安全保護措施和最佳實踐