コンテンツにスキップ

安全側に倒して使う

tier 2(効いてくる)確認 1 か月前(2026年8月23日)

どこまで来たら使えたと言えるか

面: 両方で同じ

段達成したと言える状態
1. 触る/permissions で今の設定を一度監査し、既定では read-only から始まることを自分の目で確かめた
2. 入れる信頼できないコンテンツを扱う作業の手順(レビューしてから承認、VM 内で実行)を決めて守っている
3. 効かせるprompt injection に対する保護がどこまでで、どこからが自分の運用の責任かを説明できる

何のためのものか

permission ベースの設計、prompt injection 対策、MCP・クラウド実行のセキュリティ。これらの保護はリスクを大きく下げるが、いかなるシステムもすべての攻撃に完全に耐えるわけではない。

つまり、仕組みの範囲を知ったうえで運用で埋めるところまでが「使いこなす」に入る。

触る

既定の姿を確認する。

  • 既定では厳格な read-only の権限で動く。 ファイル編集・テスト実行・コマンド実行が必要になると明示的に許可を求める
  • 書き込めるのは起動したフォルダとそのサブフォルダだけ。 親ディレクトリのファイルは明示的な許可なしに変更できない
  • /permissions で今の設定を見る。定期的に監査するのが公式に挙げられているベストプラクティス

入れる

信頼できないコンテンツを扱うときの手順を決める。公式に挙げられているのは次の 5 つ。

  1. 承認前に提案されたコマンドをレビューする
  2. 信頼できないコンテンツを Claude に直接パイプしない
  3. 重要なファイルへの変更案を検証する
  4. 外部ウェブサービスとやり取りする場合は特に、スクリプト実行やツール呼び出しを VM 内で行う
  5. 不審な挙動は /feedback で報告する

機微なコードでは、プロジェクト固有の permission 設定を使い、追加の分離のために dev container を検討する。

効かせる

保護の中身を知る。ここが分かると「どこまで任せてよいか」が決まる。

  • ネットワーク取得系は自動承認されない。 curl / wget などは既定でプロンプトが出る。1 回だけ承認するか、Bash(curl *) のような allow ルールを足すか、permissions.deny で完全にブロックするかを選ぶ
  • web fetch は別のコンテキストウィンドウを使う(取得内容がそのままメイン会話を動かさない)
  • 疑わしい bash コマンドは、以前に allowlist されていても手動承認になる。 マッチしないコマンドは fail-closed で手動承認
  • MCP サーバーは自分で選ぶ責任がある。 Anthropic は Directory 追加前に listing criteria でレビューするが、セキュリティ監査や管理は行わない
  • チームでやるなら managed settings。 承認済みの permission 構成をバージョン管理で共有し、ConfigChange hook でセッション中の設定変更を監査・ブロックする

落とし穴

  • -p の非対話実行では trust verification が無効。 対話なら出るはずの確認が出ない
  • ホームディレクトリで直接起動すると trust がディスクに書かれない。 起動のたびにプロンプトが出る(永続化する設定は無い)。プロジェクトのサブディレクトリから起動する
  • Remote Control では接続中トランスクリプトが Anthropic のサーバーに保存される(デバイス間同期のため)。コード実行とファイルアクセスはローカルに留まる
  • Windows で WebDAV を有効にすることは推奨されない。 permission system を迂回してリモートホストへのネットワークリクエストを発生させうる
  • 脆弱性を見つけたら公開せず、HackerOne プログラム経由で報告する

根拠と前後

このページが書ける範囲は、根拠にした facts に書かれていることだけです。 仕様そのものはそちらを読んでください。