--settings の値は、いくつかの セキュリティに関連する例外 を除いて、これらをオーバーライドできません。これらの例外では、下位レベルからのより厳密な値がカウントされます。
このページは、マネージド設定をデプロイするか、設定が適用されない理由をデバッグする管理者向けです。強制する内容を決定するには、強制する内容を決定する テーブルから始めてください。claude.ai コンソールパスについては、サーバーマネージド設定 を参照してください。開発者自身の値がどのファイルに入るかについては、設定 を参照してください。
マネージド設定ファイルをデプロイする
これは各マシンにポリシーを配置する最速の方法です。managed-settings.json ファイルです。マネージド設定の配信方法をまだ選択していない場合、またはデバイスが MDM 下にあるか開発者がクラウドセッションを実行している場合は、最初に 配信メカニズムを選択する を読んでください。
1
managed-settings.json を作成する
強制することを決定したキーを保持する ログイン方法、モデル、MCP サーバー、マーケットプレイスを含むより多くのマネージドキーの形状を示すより完全な例については、組織のマネージド設定 を参照してください。
managed-settings.json を作成します。これは settings.json と同じ JSON 形式です。強制する内容を決定する テーブルは各コントロールの背後にあるキーをリストしており、設定リファレンス の各エントリは、マネージドソースがそれを設定できるかどうかを示しています。このファイルは 2 つのファイル読み取りをブロックし、バイパスモードをオフにし、Claude Code がユーザー、プロジェクト、ローカルファイルおよび --allowedTools からの権限ルールを無視するようにします。managed-settings.json
2
ファイルを各マシンに配置する
ファイルを
managed-settings.json として、オペレーティングシステムのシステムディレクトリに保存します。フリート上のファイルを配置するために既に使用しているツールを使用します。- macOS:
/Library/Application Support/ClaudeCode/managed-settings.json - Linux と WSL:
/etc/claude-code/managed-settings.json - Windows:
C:\Program Files\ClaudeCode\managed-settings.json
3
ポリシーが適用されたことを確認する
1 つのマシンで、Claude Code 内で
/status を実行します。Setting sources 行は Enterprise managed settings (file) を表示します。その後、フリートの残りにロールアウトします。ポリシーが有効であることを確認する は、行が見つからない場合に何を確認するかについて説明しています。配信メカニズムを選択する
上記の手順で作成したファイルは、管理設定をマシンに配置する 4 つの方法のうちの 1 つです。どのメカニズムもsettings.json ファイルと同じポリシーキーを扱うため、設定リファレンスはそのすべてに当てはまります。一部のキーは特定のソースに結び付いており、各エントリの Scope 行にそれが記載されています:
- 配信制御:
policyHelper、wslInheritsWindowsSettings、managedSourcesBehavior - ゲートウェイログインキー:
forceLoginGatewayUrl、gatewayInternalNetworks、forceLoginMethodの"gateway"値
Jamf、Iru、Intune、グループポリシー用のスターターテンプレートは、MDM サンプルリポジトリにあります。
組織に HIPAA 設定が適用されている場合は、サンドボックス化、ネットワーク許可リスト、認証情報の保護、ローカルデータ保持を含むより充実した
managed-settings.json について、設定サンプルリポジトリの settings-hipaa.json と README-hipaa.md を参照してください。
これらのいずれかと併せて managed-mcp.json を通じてデプロイする、または managedMcpServers キーを通じて提供する管理 MCP サーバーについては、管理 MCP 設定を参照してください。
ポリシーが適用される場所とタイミング
デプロイされたポリシーは、次のように開発者のセッションに反映されます:-
サーフェス: 開発者のマシン上では、ターミナル、VS Code および JetBrains 拡張機能、デスクトップアプリの Code タブ、Agent SDK のセッションが、これらすべてのソースを読み取ります。Agent SDK のセッションは、
settingSourcesがユーザー、プロジェクト、ローカルのファイルを除外している場合でも管理設定を読み込みます。 - クラウドセッション: Anthropic がホストする環境のセッションはデバイスの MDM プロファイルやファイルを読み取らないため、そのポリシーはサーバー管理設定から提供する必要があります。セルフホスト環境のセッションは、ランナーイメージ内の管理設定ファイルも読み取りますが、デフォルトでは、Claude Code がすべての管理ソースから読み取るキーを除き、サーバー管理設定がポリシーキーを 1 つも配信しない場合に限られます。両方を適用するオプトインについては、Claude Code が管理ソースを組み合わせる方法で説明しています。
- Claude Tag セッション: Claude Tag のセッションはクラウド環境で実行されますが、サーバー管理設定は受け取りません。セルフホスト環境では、ランナーイメージ内の管理設定ファイルは引き続き読み取ります。Claude Tag 自体は Claude Tag 管理設定で設定します。
-
Cowork セッション: Claude Desktop アプリの Cowork は、そのセッションを Claude Code 上で実行します。Cowork セッションでは、ユーザーが Team または Enterprise アカウントでサインインしている場合でも、Claude Code が claude.ai 管理コンソールからサーバー管理設定を取得することはありません。そのため、どのポリシーが適用されるかはセッションの実行場所によって異なります:
- ユーザーのマシン上: デフォルトでは、Cowork セッション内の Claude Code はそのデバイス上の MDM または OS レベルのポリシーと管理設定ファイルを読み取るため、ポリシーはそこにデプロイします。
- フル VM サンドボックス内: Claude Desktop の管理設定で
requireCoworkFullVmSandboxが設定されている場合、Claude Code は仮想マシン内で実行され、そこにはデバイスの MDM ポリシーや管理設定ファイルが存在しません。 - リモート Cowork セッション: これらは Anthropic が管理する VM 上で実行され、Claude Code が読み取るデバイスポリシーはありません。
strictKnownMarketplacesとblockedMarketplacesのリストを自ら適用します。そのチェックについては制限の仕組みで説明しています。サーフェスの対応範囲の表では、Cowork と他のサーフェスを比較しています。 -
実行中のセッション: ほとんどの変更は、配信メカニズムの表のスケジュールに従い、再起動なしで実行中のセッションに反映されます。
forceRemoteSettingsRefresh、requiredMinimumVersion、および一部のユーザーが編集可能なキーへの変更は、次回のセッション開始時に有効になります。- 新規または変更された
policyHelperエントリは、次回の起動時に有効になります。その起動時にサーバー管理設定がヘルパーを覆い隠している場合、取得によってそれらの設定の削除が報告されるとすぐにヘルパーが実行されます。
-
承認が必要な変更: 次回の起動まで待機する更新を除き、フックや
env変数など承認が必要な設定に対するサーバー管理の変更は、対話型セッションでは開発者がダイアログを承認するまで待機し、IDE 拡張機能または Agent SDK がホストするセッションでは現在の実行に適用されます。その他のサーバー管理の変更は、次回のポーリングで適用されます。 -
長期間のセッション: 数週間開いたままのセッションは、ロールアウトに遅れることがあります。
requiredMinimumVersionは古いバイナリの起動をブロックしますが、すでに実行中のセッションを終了させることはありません。
各メカニズムがポリシーを保存する場所
キーはどこでも同じですが、各メカニズムはそれらを異なる場所と形式で保存します:- サーバー管理: Anthropic のサーバー、またはユーザーのゲートウェイがポリシーを保持します。Claude Code はローカルキャッシュを保持し、起動時にそれを適用し、取得が成功するたびに置き換えます。
- macOS 構成プロファイル:
com.anthropic.claudecode管理環境設定ドメイン。managed-settings.jsonと同じトップレベルキーを使用し、ネストされた設定は辞書として、リストは plist 配列として記述します。 - Windows HKLM レジストリ:
HKLM\SOFTWARE\Policies\ClaudeCodeの下にあるSettingsという名前のREG_SZまたはREG_EXPAND_SZ値としての JSON。 - ファイルベース: システムディレクトリ内の
managed-settings.json、オプションのmanaged-settings.d/ディレクトリ、およびmanaged-mcp.json。システムディレクトリは、macOS では/Library/Application Support/ClaudeCode/、Linux と WSL では/etc/claude-code/、Windows ではC:\Program Files\ClaudeCode\です。Claude Code は、従来の Windows パスC:\ProgramData\ClaudeCode\managed-settings.jsonを読み取りません。 - Windows HKCU レジストリ:
HKCU\SOFTWARE\Policies\ClaudeCodeの下にある同じSettings値。
ファイルベースのポリシーをチーム間で分割する
複数のチームが 1 つのポリシーの一部をそれぞれ所有している場合は、1 つの共有ファイルを編集する代わりに、各部分を同じシステムディレクトリ内のmanaged-settings.json の隣にある managed-settings.d/ 内の個別のファイルに配置します。
Claude Code は最初に managed-settings.json をマージし、次にディレクトリ内のすべての *.json ファイルをアルファベット順にマージします。順序を制御するには、10-telemetry.json や 20-security.json のように、ファイル名に数字のプレフィックスを付けます。Claude Code は、隠しファイルと .json で終わらないファイルを無視します。
2 つのファイルが同じキーを設定している場合、Claude Code は次のルールに従ってそれらを組み合わせます:
- 単一の値(
"model": "opus"や"cleanupPeriodDays": 7など): 後のファイルの値が前の値を置き換えます - リスト(
permissions.denyやsandbox.network.allowedDomainsなど): 2 つのリストが結合され、重複は削除されます - ネストされたブロック(
envやsandboxなど): 2 つのブロックはキーごとにマージされ、内部の各キーも同じルールに従います fallbackModel: 後のチェーンが前のチェーン全体を置き換えますextraKnownMarketplacesとmanagedMcpServers: 同じ名前を持つ後のエントリが前のエントリ全体を置き換えますmodelPicker: 後のラインナップが前のラインナップ全体を置き換えます
Claude Code が管理されたソースを組み合わせる方法
組織が同じマシンに複数の管理されたソースを配信する場合、managedSourcesBehavior キーは Claude Code が他のソースに対して何を行うかを決定します。
"first-wins"、デフォルト: Claude Code は、少なくとも 1 つのポリシーキーを配信する最も高いランクのソースを使用し、すべての管理者ソースから読み取られるキー内のキーを除いて、残りを無視します。Claude Code はスキップするソースについて警告を表示しません。/statusは使用したソースとスキップしたソースに名前を付けます。"merge": Claude Code はポリシーキーを配信するすべての管理者ソースを適用し、キーの種類ごとに組み合わせます。ほとんどのキーでは高いランクのソースの値が適用され、リストは和集合、ロックは最も厳しい値を取ります。すべての管理されたソースを構成するでは、キーを設定する場所と各種類のキーがどのように組み合わされるかを説明しています。Claude Code v2.1.242 以降が必要です。
- ポリシーキー: 2 つの制御キー(
wslInheritsWindowsSettingsとmanagedSourcesBehavior)以外のすべての設定キー。これらのキーのみを含む管理設定ファイルまたは MDM ポリシーはカウントされず、Claude Code は次のソースに移動します。 - 管理者ソース: 以下の最初の 3 つのソースの 1 つ。HKCU レジストリはユーザーが書き込み可能であり、1 つではありません。
- リモート設定。claude.ai からサーバー管理設定として、またはClaude アプリゲートウェイによって配信されます。Claude Code は、セッションが適格な認証情報で Anthropic の API に直接認証する場合、
/loginでゲートウェイにサインインする場合、またはそのセッションに設定を提供するゲートウェイの背後で Claude Desktop の Code タブで実行される場合にのみ、このソースをフェッチします。他のプロバイダー、またはANTHROPIC_BASE_URLが Anthropic の API 以外を指す場合、次のソースから開始します - MDM または OS レベルのポリシー: macOS plist または HKLM レジストリキー
- 管理設定ファイル、
managed-settings.d/*.jsonとmanaged-settings.jsonをマージしたもの - Windows 上の HKCU レジストリ、および WSL 上で HKLM レジストリまたは Windows 管理設定ファイルが
wslInheritsWindowsSettingsをオンにし、HKCU 値もそれを設定している場合の HKCU レジストリ。Claude Code は、それより上に管理者ドキュメントが存在せず、ホスト提供の親設定が制限的なキーを提供しない場合にのみこれを読み取ります
管理者ドキュメントが存在するとみなされる場合
管理されたソースのランク付けにおいて、Claude Code は、存在する管理者ドキュメントの下にあるユーザーが書き込み可能な HKCU レジストリを決して適用しません。ドキュメントは次の場合に存在するとみなされます。- ポリシーキーを
null以外の値に設定している場合(Claude Code が読み取れない値であっても) - 存在するものの読み取れない HKLM 値、管理設定ファイル、または
managed-settings.dディレクトリである場合
/etc/claude-code もユーザーが書き込み可能であり、wslInheritsWindowsSettings エントリに、Windows のドキュメントがそれより上に位置する場合が示されています。
すべての管理者ソースから読み取られるキー
デフォルトの"first-wins" 設定では、Claude Code はほとんどのキーを選択したソースからのみ読み取り、選択したソースがそのキーを設定しないままにしている場合でも、低いランクのソースの値を無視します。
いくつかのキーは異なる動作をします。Claude Code はそれらをすべての管理者ソースから読み取るため、選択したソースが設定しない場合でも、低いランクの MDM ポリシーまたは管理設定ファイルがそれらを設定できます。Claude Code はユーザーが書き込み可能な HKCU レジストリをそのスキャンから除外します。HKCU が唯一のソースであり、ホストが親設定を提供しない場合、HKCU は選択されたソースのように適用されます。
クロスソースキーには以下が含まれます。
-
sandbox.network.allowManagedDomainsOnlyとsandbox.filesystem.allowManagedReadPathsOnly: 任意の管理者ソースのtrueがロックをオンにします。ロックがオンの間、Claude Code はロックするアロウリスト(sandbox.network.allowedDomainsとWebFetch(domain:...)アロー ルの組み合わせ、またはsandbox.filesystem.allowRead)をすべての管理者ソースにまたがって和集合にします。ロックがない場合、Claude Code はアロウリストを他のキーのように扱うため、"first-wins"では選択されていない管理者ソースのアロウリストは無視されます。 -
allowAllClaudeAiMcps -
allowManagedMcpServersOnly: 任意の管理者ソースのtrueが MCP アロウリストロックをオンにします。ロックがオンの間、管理されたallowedMcpServersリストは、1 つを設定する最も高いランクの管理者ソースから取得されます。サーバー管理リストは、低いソースのリストと組み合わせるのではなく、置き換えます。 管理者ソースがリストを設定しない場合、親設定がリストを提供しない限り、デニーリストを通過するすべてのサーバーが読み込まれます。 ロックがない場合、Claude Code は適用する管理ソースからallowedMcpServersを読み取るため、"first-wins"では選択されていない管理者ソースのリストは無視されます。Claude Code v2.1.273 以降が必要です。 -
deniedMcpServersとdisableClaudeAiConnectors: 任意の管理者ソースのエントリまたはtrueが適用されます。Claude Code v2.1.273 以降が必要です。 -
サンドボックスバイナリパス
sandbox.bwrapPathとsandbox.socatPath -
サンドボックス
ripgrepバイナリ、sandbox.ripgrep -
sandbox.filesystem.disabledとsandbox.network.strictAllowlist -
useAutoModeDuringPlan、syncClaudeAiSkills、およびsyncClaudeAiPlugins。任意の管理者ソースのfalseが動作をオフにします。開発者のユーザーまたはローカル設定のfalseもそれをオフにします。各キーは拒否のみが可能です。 -
enableArtifact。任意の管理者ソースのfalseがArtifact ツールをオフにします。開発者のユーザー、プロジェクト、またはローカル設定のfalseもそれをオフにし、ソースはそれをオンに戻しません。どの下位レベルの値がまだカウントされるかを参照してください。Claude Code v2.1.242 以降が必要です。 -
maxEffortLevel。任意の管理者ソースの最も低いキャップが適用されます。開発者が自分の設定または--settingsで低いキャップを設定する場合、Claude Code はそれを適用します。ソースはキャップを上げることはできません。Claude Code v2.1.267 以降が必要です。 -
attributionのコミットトレーラーオプトアウト、または非推奨のincludeCoAuthoredByから任意のティア -
forceRemoteSettingsRefresh -
env。管理者ソース全体で変数ごとにマージされます。各変数は、それを定義する最も高い優先度のソースから取得されるため、低いソースは高いソースが設定しないままにした変数を埋めます。いくつかの変数は独自のルールに従います。管理されたソース全体のキーごとの例外は各変数に名前を付けます。Claude Code v2.1.223 以降が必要です。v2.1.223 より前では、Claude Code は選択されたソースの全体envブロックのみを適用しました。
allowedProviders には独自のルールがあります。そのエントリの Scope の注記で、マシン上で設定されたリストがサーバー管理のリストとどのように組み合わされるかを説明しています。Claude Code v2.1.285 以降が必要です。
管理者ソースが allowManagedMcpServersOnly または allowedMcpServers リストを設定し、その値が実行中のものではない場合、/status と claude doctor はそのソースとキーに名前を付けます。
すべての管理されたソースを構成する
組織が配信するすべての管理者ソースを Claude Code に適用させるには、デプロイする最も高いランクのソースでmanagedSourcesBehavior を "merge" に設定します。Claude Code はキーまたはポリシーキーを持つ最も高いランクのソースからのみキーを読み取るため、低いソースはそれ自体をそれより上のソースとのマージにオプトインすることはできず、サーバー管理設定を受け取らないマシンは MDM プロファイルにもキーが必要です。ユーザーが書き込み可能な HKCU レジストリは別のソースとマージされることはありません。Claude Code v2.1.242 以降が必要です。
"merge" では、Claude Code は低いソースのリストエントリ(permissions.allow ルールやフック など)をポリシーに追加するため、最も高いランクより下にランク付けされたすべてのソースが管理者の制御下にある場合にのみオンにします。
この表は、"merge" の下で Claude Code が各種類のキーをどのように組み合わせるかを示しています。managedSourcesBehavior エントリは 3 つの行のすべてのキーに名前を付けます。制限アロウリスト、全体で取得される値、および最も高いランクのソースからのみ読み取られるキー。
マシンで組み合わされたソースを確認するには、
/status の Setting sources 行を読み取ります。そのセクションは各ラベルが何を意味するかを説明しています。
ヘルパープログラムでポリシーを計算する
policyHelper は MDM ポリシーまたは管理設定ファイルが名前を付ける実行可能ファイルであり、Claude Code はそれを実行して起動時に管理設定を計算します。選択されたソースが 1 つを構成し、ヘルパーが managedSettings オブジェクトを出力する場合、その出力は Claude Code が読み取る内容を変更します。
- 出力された
managedSettingsオブジェクトはセッションの唯一の管理設定です。これはそれが他の方法で読み取るすべての管理者ソースからのキーを含みます。ただし、forceRemoteSettingsRefreshは独自の起動ルールを持っています。
埋め込みホストにポリシーを追加させる
別のアプリケーション(Claude Desktop、IDE 拡張機能、Agent SDK アプリなど)が Claude Code を起動する場合、そのホストは SDKmanagedSettings オプションを通じて独自の管理設定を渡すことができます。Claude Code はこれらを親設定と呼びます。
デフォルトでは、Claude Code は管理者ソースが存在する場合、親設定を無視します。サーバー管理設定、MDM または OS レベルのポリシー、または管理設定ファイル。
Claude Code が親設定を管理者ソースと並行してマージするようにするには、最も高い優先度の管理ソースで parentSettingsBehavior を "merge" に設定します。Claude Code はそのソースからのみキーを読み取ります。
Claude Code はホストの値のうち、Claude が実行できることを制限するものだけを保持します。知っておくべき 1 つのギャップがあります。allowManaged*Only ロックも設定しない限り、ホストの権限アロー ルとサンドボックスアロウリストはまだ適用されます。親設定を制限するでロックを参照してください。
policyHelper はこのキーに関係なく親マージをオフにすることができます。そのエントリは時期を示します。
Claude Code はまた、親が提供する値にこれらのチェックを適用します。
-
任意の管理者ソースが
allowManagedPermissionRulesOnlyを設定する場合、Claude Code は親が提供する権限アロー ルとadditionalDirectoriesをそれらを読み取るときにドロップします。高い優先度のソースがキーを設定しないままにしている場合でも。キーの効果は、Claude Code が適用する管理設定、または親設定がマージするように選択したものから来ます。 -
Claude Code は適用する管理設定の
forceLoginOrgUUIDまたはallowedMcpServers値を強制し、親が提供するものをブロックします。MCP アロウリストロックの外では、Claude Code が適用しない低い管理者ソースの値は適用されず、ブロックもされません。 Claude Code v2.1.273 以降では、allowManagedMcpServersOnlyがオンの間、1 つを設定する最も高いランクの管理者ソースからのallowedMcpServersリストが適用され、親のものをブロックします。これはクロスソースキーです。親のリストは、管理者ソースがリストを設定しない場合にのみ適用されます。managedSourcesBehaviorエントリは"merge"の下で各キーを提供するソースを示します。v2.1.223 より前では、任意の管理者ソースの値が親のものをブロックしました。 -
availableModelsの場合、Claude Code は適用する管理設定の値を強制し、親が提供するリストをブロックします。 -
strictKnownMarketplacesの場合、Claude Code は同様に適用する管理設定のリストを強制し、親が提供するものをブロックします。親のリストは、適用された管理ソースがリストを設定しない場合にのみ適用されます。Claude Code v2.1.282 以降が必要です。 -
allowedProvidersの場合、選択された管理ソースのリストが親が提供するリストをブロックし、managedSourcesBehaviorの"merge"オプトインの下では、任意の管理者ソースのリストがブロックします。Claude Code v2.1.285 以降が必要です -
親が提供する
blockedMarketplacesは、管理ソースが設定するブロックリストに加えて適用されます。Claude Code v2.1.282 以降が必要です。
管理されたルールのみが適用される場合に Cowork フォルダアクセスを保持する
Claude Desktop アプリの Cowork はそのセッションを Claude Code で実行し、各セッションにそのワーキングフォルダ(ユーザーが接続するフォルダなど)へのアクセスを許可します。セッションを起動するときに提供するアロー ルを通じて。管理ポリシーがallowManagedPermissionRulesOnly を設定する場合、Claude Code は管理ポリシーのアロー ルのみを保持します。ホストが親設定として、--allowedTools として、または設定ファイルで提供するアロー ルをドロップするため、これらのフォルダへの書き込みは事前承認を失います。編集前に確認を求める Cowork セッションでは、Cowork はプロンプトを表示できず、Claude は各書き込みを保護された場所またはそれより上のパスの外のパスに解決されるため、ブロックされたと報告します。
書き込みを復元するには、Claude Code が選択するマシンの管理ソースにこれらのフォルダのアロー ルを追加します。MDM 管理フリートでは、それは別の管理設定ファイルではなく MDM ポリシーです。この例はファイル形式を使用し、MDM ポリシーは同じキーを取ります。allowManagedPermissionRulesOnly を設定したままにし、各ユーザーのホームディレクトリの CoworkProjects フォルダの下での編集を許可します。パスをユーザーが接続するフォルダに置き換えます。
managed-settings.json
// 形式を含む)をカバーしています。
開発者が変更できるもの
開発者の独自の設定ファイル、--settings 値、およびプロジェクトファイルは管理値をオーバーライドしません。例外は、より厳しい下位レベルの値がカウントされることのみを許可します。これらのケースはそのルールの外にあります。
- セッションのモデル: 管理された
modelはロックではなくデフォルトです。--modelとANTHROPIC_MODELはそのセッションのモデルを選択できるため、availableModelsをデプロイして選択を制限します。 - セッションの自動圧縮ウィンドウ: 管理された
autoCompactWindowもデフォルトです。--autocompactフラグとCLAUDE_CODE_AUTO_COMPACT_WINDOW変数は、引き続きそのセッションの自動圧縮ウィンドウを設定できます。 - ローカル管理者権限: マシンの管理者である開発者は、管理ソース自体を編集できます。これが MDM ツールがスケジュールでプロファイルまたはファイルを再デプロイできる理由であり、HKLM レジストリと macOS 管理設定ドメインが存在する理由です。
- サーバー管理キャッシュ: サーバー管理設定は Anthropic のサーバーから取得され、ローカルキャッシュへの編集は次の成功したフェッチまでのみ続きます。
- その他のツール: 管理設定は Claude Code のみをバインドします。別のツールから API を呼び出す開発者はそれらの下にはありません。
ポリシーが有効であることを確認する
開発者がポリシーが適用されていないと報告している場合、またはロールアウトがフリートへのプッシュ前に完了したことを確認したい場合があります。そのマシン上の 2 つのコマンドがこれに答えます。/status は Claude Code が選択した管理対象ソースを表示し、claude doctor はドロップしたものをリストします。
/status でソースを読む
開発者のマシンで Claude Code 内で/status を実行し、Setting sources 行を読みます。管理対象ソースが有効な場合、その行は Enterprise managed settings をリストし、括弧内に Claude Code が選択したソースを表示します。
(remote):claude.ai またはゲートウェイからのサーバー管理設定(plist)または(HKLM):MDM または OS ポリシー(file)、(drop-ins)、または(file + drop-ins):managed-settings.json、ドロップイン ディレクトリ、またはその両方(remote + file, merged)または別のリスト(, mergedで終わる):組織がすべての管理対象ソースを構成し、Claude Code がリストされたソースをポリシーにマージしました。下位のソースは、リストに表示されなくてもenv変数を提供できます。Claude Code v2.1.242 以降が必要です(HKCU):ユーザー書き込み可能なレジストリ フォールバック(parent process):埋め込みホストが制限的な設定を提供しました(helper):選択した MDM またはファイル ソースによって構成されたpolicyHelper
Skipped sources が各ソースを名前で示します。これを読んで、ポリシーがマシンに到達しなかった場合と、到達したが高優先度のソースがオーバーライドした場合を区別します。Claude Code v2.1.242 以降が必要です。
ポリシーが適用されていない場合、Setting sources 行は 2 つの問題のどちらがあるかを示します。
-
行が見つかりません:Claude Code はポリシー キーを配信する管理対象ソースを見つけませんでした。
管理対象設定ファイルをデプロイした場合、OS のパスに配置されていることを確認し、制御キーのみではなくポリシー キーが含まれていることを確認します。有効な JSON ではないファイルはこの状態を生成しません。Claude Code は代わりに起動を拒否します。
代わりにサーバー管理設定を通じてデプロイした場合は、
claude doctorを実行します。これはフェッチ結果を報告します。 -
行が展開したソース以外のソースを名前で示す:高優先度のソースが存在し、Claude Code があなたのソースを無視しました。
Skipped sourcesがそれをリストします。Claude Code が管理対象ソースを組み合わせる方法は順序を示します。
Claude Code がドロップしたエントリを見つける
管理対象設定ファイル、MDM プロファイル、レジストリ値、またはサーバー管理ペイロードがスキーマ検証に失敗した場合、Claude Code は最初に修復できる個別エントリ(無効なパーミッション ルールなど)をスキップし、各エントリに対して警告を表示します。Claude Code はその後、値がまだ失敗するものをドロップします。ただし、値が閉じた状態で失敗するキーのいずれかに属する場合は除きます。 Claude Code はpolicyHelper が出力する managedSettings に対してより厳密です。同じエントリ修復を行いますが、生き残るスキーマ違反は全体のヘルパー実行を失敗させ、起動時に Claude Code は起動を拒否します。これは非ゼロで終了するヘルパーと同じです。
管理対象設定ファイル、ドロップイン ファイル、MDM plist、または HKLM レジストリ値が存在するが JSON オブジェクトとして解析できない場合、Claude Code は起動を拒否し、別の管理者ソースが有効なポリシーを配信する場合でもソースを名前で示すエラーを出力します。各ソースは次の場合にこのように失敗します。
- 管理対象設定ファイルまたはドロップイン ファイル:ファイルが有効な JSON ではない、またはその最上位がオブジェクトではない
- MDM plist:macOS の
plutilが plist が不正形式であると報告する、またはその変換されたコンテンツが JSON オブジェクトではない - HKLM レジストリ値:
Settings値が文字列ではない、空である、または JSON オブジェクトを保持していない
- 不在のファイル、プロファイル、またはレジストリ値は失敗ではありません。Claude Code はそのソースなしで実行されます。
- 空の管理対象設定ファイルは
{}としてカウントされます。 - ユーザー書き込み可能な HKCU レジストリ キーの不正形式の値は起動をブロックしません。Claude Code は代わりに
/statusとclaude doctorで通知として報告します。
managed-settings.d/ ディレクトリ、MDM プロファイル、または HKLM レジストリ値が存在するが読み取ることができず、管理者ソースがポリシーを提供しない場合、何が起こるかは読み取りが失敗した理由によって異なります。
- オペレーティング システムが読み取りを拒否した場合(root のみが読み取れるファイルなど)、すべてのセッションはそのソースのポリシーなしで起動します。
/statusとclaude doctorは失敗を記録し、-pを使用した実行では stderr にも出力されます。 - I/O エラーなど、その他の読み取り失敗の場合、すべてのセッションは起動時に管理者に連絡するよう求めるメッセージを表示して終了します。
- インタラクティブ セッションは起動時に無効なエントリをリストするダイアログを表示します。
-pを使用した非インタラクティブ実行は stderr に概要を出力します。claude doctorは各無効なエントリをそのソースとフィールドでリストします。
閉じた状態で失敗するキー
管理対象ソースがallowManagedPermissionRulesOnly、disableAutoMode、または skipDangerousModePermissionPrompt などの単一の制限的な値を持つトップレベル キーを Claude Code が読み取ることができない値に設定した場合、キーはあなたがそれを修正するまでその値として読み取られます。レポートはキーが was present but invalid であったと言い、Claude Code が値として扱う値を名前で示します。sandbox 内のキーについては、sandbox 内の無効な値を参照してください。
これらのケースは閉じた状態で失敗しません。
nullはキーを削除します。- 無効な
disableAllHooksは、引用符で囲まれたブール値であっても警告とともにドロップされます。trueを適用すると、組織自身の管理設定がデプロイするフックもアンロードされてしまうためです。 - このルールが対象とするその他のすべてのブール キーについては、文字列
"true"または"false"はそのブール値として読み取られ、/statusに引用符を削除するよう求める通知が表示されます。
permissions、autoMode、worktree、および attribution ブロックをフィールドごとに修復します。全体をドロップするのではなく。
permissions.disableBypassPermissionsModeなどのブロック内のロックはその制限的な値として読み取られます。- 無効な
permissions.defaultModeはdefaultとして読み取られます。 permissions内のdenyまたはaskリストを全く読み取ることができない場合、Claude Code はallowとadditionalDirectoriesを保留するため、制限が横に書かれていない限りグラントは適用されません。レポートは各保留されたグラントと読み取ることができなかったリストを名前で示します。autoModeでは、読み取ることができないsoft_denyまたはhard_denyリスト、または無効なエントリを失った場合、allowとenvironmentを同じ方法で保留します。
allowedHttpHookUrls と httpHookAllowedEnvVars は設定ファイル全体でマージされるため、管理対象リストが空の間、ユーザー、プロジェクト、またはローカル設定のエントリは引き続き適用されます。
これら 2 つのキーと allowedChannelPlugins のフォールバックには Claude Code v2.1.267 以降が必要です。以前のバージョンは、値またはエントリが無効な場合、キー全体をドロップします。strictKnownMarketplaces と blockedMarketplaces のフォールバックには Claude Code v2.1.277 以降が必要です。以前のバージョンは、値またはエントリが無効な場合、キー全体をドロップします。strictPluginOnlyCustomization と enabledPlugins のフォールバックには Claude Code v2.1.282 以降が必要です。
requiredMinimumVersion と requiredMaximumVersion は設計上オープンに失敗します。無効な値は適用されるのではなくドロップされます。
この許容度は管理対象設定にのみ適用されます。ユーザー、プロジェクト、およびローカル設定ファイルは厳密なままです。JSON またはトップレベルの形状が検証に失敗するファイルは全体として拒否され、報告されます。不正形式のパーミッション ルールなどの個別エントリが失敗する場合は、警告とともにスキップされ、ファイルの残りが適用されます。
sandbox 内の無効な値
管理対象 sandbox ブロック内の 1 つの値が無効な場合、Claude Code はブロック全体をドロップしません。各フィールドを独立して検証するためです。このフィールドごとの処理には Claude Code v2.1.283 以降が必要です。v2.1.283 より前のバージョンでは、credentials 以外の値が無効な場合、Claude Code は credentials を除くすべての sandbox フィールドをドロップします。
無効なフィールドに対して取得する警告は、フィールドを名前で示し、それに何が起こるかを示します。何が起こるかは、フィールドが何を制御するかによって異なります。
- Boolean キーを引用符で囲まれた
"true"または"false"に設定した場合、値はその Boolean としてカウントされます。警告の代わりに、/statusは引用符を削除するよう求める通知を表示します。 failIfUnavailableが無効な場合、Claude Code は値をドロップするため、読み取り不可能な値はフリート全体でセッションの開始を停止しません。- Claude Code は他のすべての無効な Boolean を、値が修正されるまでサンドボックスを最も厳密に保つ値として扱います。
enabledやnetwork.allowManagedDomainsOnlyなど、サンドボックスまたはその制限の 1 つをオンにするキーはtrueとしてカウントされます。allowUnsandboxedCommandsなど、それを緩和するキーはfalseとしてカウントされます。 credentials外のリスト(excludedCommandsやnetwork.allowedDomainsなど)では、Claude Code は無効なエントリをドロップし、リストの残りを保持します。配列ではないリスト、または有効なエントリがないリストは、まったく適用されません。network.deniedDomainsまたはそのいずれかのエントリが無効な間、Claude Code はnetwork.allowedDomainsも保留するため、管理対象アローリストは拒否リストを修正するまで何も許可しません。filesystem.denyRead、filesystem.denyWrite、またはそのいずれかのエントリが無効な間、Claude Code はfilesystem.allowReadとfilesystem.allowWriteの両方を保留するため、拒否リストを修正するまで何も許可しません。
マネージドソースのみが設定できるキー
Claude Code は以下のキーをマネージドソースからのみ読み込みます。ユーザーまたはプロジェクト設定ファイルに配置しても効果がありません。 これらのほとんどはロックです。ロックが管理する値(権限ルールやsandbox.network.allowedDomains など)は、任意のレベルで設定できる通常のキーであり、ロックは Claude Code にマネージド値のみを尊重するよう指示します。
このテーブルは権限、プラグイン、配信制御をカバーしています。ここに記載されていないキーについては、設定リファレンスインデックスの Scope 列に、それがマネージドのみかどうかが記載されています。
Team および Enterprise プランでは、Owner が Claude Code 管理設定で組織全体の Remote Control とクラウドセッションを有効または無効にします。Owner が Remote Control をオフにすると、Claude Code v2.1.286 以降を実行している接続済みのセッションも切断されます。各セッションは、次に組織のポリシーを更新したとき(約 1 時間に 1 回)に切断されます。それらのセッションで何が起こるかについては、
Remote Control was turned off by your organization's policy を参照してください。Remote Control は disableRemoteControl 設定でデバイスごとに無効にすることもできます。クラウドセッションにはデバイスごとの管理設定キーはありません。これらの組織設定が特定のマシンに到達したかどうかを確認するには、そこで claude doctor を実行し、Organization policy 行を読みます。この行は Claude Code がポリシーをどこから読み込んだか、または読み込まなかった理由を示します。Claude Code v2.1.261 以降が必要です。実行中のセッションでは、ポリシーが読み込まれなかった場合、/status は同じ行を表示します。組織のテレメトリをオフにする
Claude Code は、Anthropic API を直接、LLM ゲートウェイを通じて、またはカスタムANTHROPIC_BASE_URL を通じて使用するセッションで、デフォルトで Anthropic 運用 テレメトリ を送信します。API プロバイダーごとのデフォルト動作 はどのプロバイダーがそれを送信するかを示しています。すべての開発者が各人のシェルに依存することなく、マネージド設定の env ブロックを通じて DISABLE_TELEMETRY を配信することでオフにします。この例は、ポリシーが到達するすべてのユーザーに対して DISABLE_TELEMETRY を設定します。
1 の値を 承認ダイアログ を表示せずに適用します。
テレメトリをオフにする場合、Claude Code はポリシーが到達する開発者の組織の 分析ダッシュボード を供給する使用データの送信を停止します。変数は フィーチャーフラグフェッチが必要な機能 もオフにします。リモートコントロールについては、リモートコントロール要件 を参照してください。
ポリシーが適用される場所と時期 は各サーフェスに到達する配信メカニズムを示し、プラットフォーム可用性 はどのセッションがサーバーマネージド設定フェッチをスキップするかを示しています。
組織がカスタマー管理暗号化キーを使用し、Claude Code をゲートウェイを通じてルーティングする場合、プロキシとゲートウェイを構成する はこれらのセッションがこの変数を必要とする理由を示しています。
関連項目
- 組織向けに Claude Code をセットアップする: 強制する内容と方法を決定します
- サーバーマネージド設定: claude.ai コンソールまたはゲートウェイからポリシーを配信します
- マネージド MCP 構成: 開発者が使用できる MCP サーバーを制御します
- すべての設定: すべてのキー。マネージドソースがそれを設定できるかどうか
- 設定ファイルの例: マネージドキーの形状を示す完全な
managed-settings.json