Skip to content

feat(claude): 権限プロンプト削減とセキュリティ強化のための設定を追加 - #75

Merged
tunepolo merged 1 commit into
mainfrom
feat/claude-sandbox-permissions
Aug 8, 2026
Merged

feat(claude): 権限プロンプト削減とセキュリティ強化のための設定を追加#75
tunepolo merged 1 commit into
mainfrom
feat/claude-sandbox-permissions

Conversation

@tunepolo

@tunepolo tunepolo commented Aug 8, 2026

Copy link
Copy Markdown
Owner

概要

  • Claude Code のグローバル設定 (dot_claude/settings.json) に、権限プロンプトを減らしつつ安全性を高めるための設定を追加
  • 前職で使っていた設定ファイルを参考に、現環境に合わせて内容を検証・取り込み

変更内容

  • permissions.deny: .env/secrets/credentials/SSH秘密鍵/.pem/.key 等の読み取り、sudo/sugit push --force/git reset --hard/git clean -f を恒久的にブロック
  • permissions.ask: terraform apply/destroykubectl apply/deletedocker pushgh pr merge は個別確認を必須化
  • permissions.allow: 汎用開発ドメイン(GitHub/Google/Slack/AWS/npm/Terraform Registry/Anthropic)への WebFetch と WebSearch を許可
  • sandbox: macOSネイティブサンドボックスを有効化し、サンドボックス内のBashは自動許可(プロンプト削減の本体)。git/docker/gh/gcloud/kubectl/terraform/chezmoi等はサンドボックス対象外として従来の許可フローを維持
  • hooks.PreToolUse: dangerouslyDisableSandbox: true でのBash実行前に承認を求めるゲートを追加

前職設定にあった組織ログイン強制系の項目(forceLoginMethod等)や、Salesforce/HubSpot/dbt向けの許可ドメインは、現環境に不要なため除外しています。

テスト

  • jq で設定ファイルのJSON構文とキー構造を検証
  • PreToolUse フックをstdin JSONで手動テストし、dangerouslyDisableSandbox: true の有無で正しく分岐することを確認
  • サンドボックス有効化後、chezmoi コマンド自体がサンドボックスでブロックされる問題を発見し excludedCommandschezmoi * を追加して解消
  • 実運用でBashコマンドの確認プロンプトが実際に減っているか、git/gh等が従来通り動作するかを継続確認

- 認証情報ファイルの読み取りや破壊的なgit操作を permissions.deny でブロック
- terraform/kubectl/docker/gh merge 等の重要操作を permissions.ask で個別確認に
- ネイティブサンドボックスを有効化し、サンドボックス内Bashを自動許可
- dangerouslyDisableSandbox使用時に承認を求めるPreToolUseフックを追加
@tunepolo
tunepolo merged commit 6622666 into main Aug 8, 2026
5 checks passed
@tunepolo
tunepolo deleted the feat/claude-sandbox-permissions branch August 8, 2026 09:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant