Skip to content

管理者が削除したマネージド設定の許可ルールがプロセス再起動まで有効のままだった問題の修正

原文(日本語に翻訳)

管理者が削除したマネージド設定の許可ルールが、プロセス再起動まで有効なままになっていた問題を修正しました。

原文(英語)

Fixed managed-settings allow rules remaining active after an admin removed them, until process restart

概要

エンタープライズ環境では、管理者がClaude Codeの「マネージド設定」を通じて組織全体の権限ルールを管理できます。このバグでは、管理者が許可ルールを削除しても、実行中のClaude Codeプロセスがその変更を即座に反映せず、プロセスを再起動するまで削除されたルールが有効なままになっていました。セキュリティポリシーの変更が即時適用されない問題であり、v2.1.98で修正されました。

基本的な使い方

修正前の動作(問題のある挙動)

管理者の操作:
1. managed-settings.json に以下のルールを追加
   { "allow": ["Bash(curl:*)"] }

2. ユーザーが claude を起動(curl が自動許可される)

3. 管理者が "Bash(curl:*)" ルールを削除

4. ユーザーの実行中の claude プロセス
   → curl コマンドが引き続き自動許可される(プロセス再起動まで)
   → セキュリティポリシー変更が即時適用されない

修正後の動作(v2.1.98以降)

管理者の操作:
1. managed-settings.json に以下のルールを追加
   { "allow": ["Bash(curl:*)"] }

2. ユーザーが claude を起動(curl が自動許可される)

3. 管理者が "Bash(curl:*)" ルールを削除

4. ユーザーの実行中の claude プロセス
   → curl コマンドに権限プロンプトが表示されるようになる ✓
   → プロセス再起動なしにポリシー変更が適用される

実践例

シナリオ1:セキュリティインシデント対応(修正後)

セキュリティ上の問題が発生した際に、管理者が即座に許可ルールを削除して被害を最小化できます。

json
// managed-settings.json(管理者が管理)
// インシデント発生前:
{
  "permissions": {
    "allow": [
      "Bash(curl:*)",
      "Bash(wget:*)",
      "Bash(git push:*)"
    ]
  }
}
インシデント対応:
1. セキュリティ問題を検知
2. 管理者が managed-settings.json から "Bash(curl:*)" を削除
3. 修正後:実行中の全Claudeプロセスで即座に curl が制限される
   修正前:プロセス再起動まで curl は制限されない

シナリオ2:一時的な権限付与と削除(修正後)

特定の作業のために一時的に権限を付与し、作業完了後に削除するワークフロー。

bash
# 管理者の作業フロー例(修正後)

# 1. 特定の作業のために一時的に許可ルールを追加
# managed-settings.json を更新:
# { "allow": ["Bash(deploy.sh:*)"] }

# 2. 開発者がデプロイスクリプトを実行(自動許可)

# 3. デプロイ完了後、管理者がルールを削除
# managed-settings.json を更新(ルール削除)

# 4. 修正後:即座に deploy.sh の自動許可が無効化される
# 4. 修正前:開発者がClaudeを再起動するまで自動許可が続く

シナリオ3:マネージド設定の適用確認(修正後)

管理者が設定変更を確認するためのプロセス:

bash
# 管理者側での設定管理
# マネージド設定ファイルの場所(組織によって異なる)
# /etc/claude/managed-settings.json
# または
# ~/.claude/managed-settings.json(ユーザーレベル)

# 設定の変更例
{
  "permissions": {
    "allow": [
      "Bash(npm install:*)",
      "Bash(npm run build:*)"
      # "Bash(npm run deploy:*)" ← 削除した場合
      # 修正後:即座に npm run deploy が制限される
    ]
  }
}

シナリオ4:コンプライアンス要件への対応(修正後)

規制対応や監査のために権限を即時に変更する必要がある場合:

コンプライアンスシナリオ:
1. 監査により特定のコマンドへのアクセス制限が必要と判明
2. 管理者が managed-settings.json から許可ルールを削除
3. 修正後:
   - 実行中のすべての Claude Code インスタンスに即時適用
   - 再起動を待たずに規制要件を満たせる
   - 変更ログと組み合わせてコンプライアンス証跡を作成可能

注意点

  • この修正はマネージド設定(managed-settings.json)を使用したエンタープライズ環境に特に関連しています。個人用途でのsettings.jsonには影響が異なる場合があります。
  • マネージド設定の場所と管理方法は組織の設定によって異なります。IT管理者に確認してください。
  • 許可ルールの削除は即座に反映されますが、追加については引き続き確認が必要な場合があります(この修正の対象は削除のみです)。
  • 重要なセキュリティポリシー変更は、マネージド設定の即時反映に加えて、実行中のプロセスを再起動することで確実に適用されることを確認することを推奨します。

関連情報