社内AIを本番運用すると、性能より先に困ることがあります。「誰がどこから接続できるのか」「拒否ルールは抜け道なく効くのか」「障害時に止まるのか」が、設定ファイルと実際の動きでずれる問題です。
2026年9月10日に公開されたClaude Code 2.1.268は、このずれをかなり細かく埋めています。華やかな新機能ではありません。Claude apps gatewayの公開範囲への警告、シンボリックリンク経由の権限制御、MCP設定に含まれる秘密情報の表示抑止、WebFetchの300秒タイムアウトなど、運用事故につながる箇所をまとめて直した更新です。
私がこのリリースで見るのは、機能数ではなく「AIに仕事を委譲するときの境界が、設定どおりに閉じるか」です。
2.1.268で何が変わったか
公式リリースには多数の修正があります。中小企業の社内運用に関係が深いものは、次の4点です。
1. ゲートウェイの公開範囲を警告する
Claude apps gatewayでaccess_control.allow_cidrsが空の場合、起動時に警告が出るようになりました。公開アドレスから最初のリクエストを受けたときにも、一度だけ警告します。
設定が空であること自体を即座にエラーにはしていません。ここが現実的です。検証環境では広く開けたい場合があります。ただし「閉じたつもりで外から届いている」状態を黙って通さない。運用者が判断できる場所まで異常を持ち上げます。
同時にgatewayInternalNetworksという管理設定が加わりました。組織が保有する公開IPv4帯を、Claude apps gatewayの/loginで許可できます。VPNや社内ネットワークがRFC 1918のプライベートアドレスだけでは表せない企業向けの調整です。
ただし、公式の導入ガイドは引き続きゲートウェイを私設ネットワーク内に置くよう求めています。gatewayInternalNetworksは「インターネットへ広く公開してよい」という許可ではありません。自社管理のネットワーク境界を明示するための例外です。
2. 別名のパスでも拒否ルールを効かせる
Linuxの/bin、macOSの/etcや/tmpなどは、環境によってシンボリックリンクになっています。2.1.268では、リンク表記に書いたdeny/askルールと、リンク先の実体パスに対する操作が食い違う問題を修正しました。
さらに、env -Cやevalのように権限チェッカーが解析しきれないコマンドが同じ行にある場合、Read/Editの拒否ルールが適用されないケースも修正されています。
ここは地味ですが重い。AIの権限設計では「禁止ディレクトリを登録した」という設定値だけを見ても足りません。同じ場所へ別のパス表記で到達したとき、同じ判断になる必要があります。手綱は、正面の入口だけ閉じても意味がありません。
3. MCPとプラグインの画面から秘密情報を漏らさない
Gitの取得元URLにトークンやパスワードが含まれる場合、プラグインやマーケットプレイスのエラー表示からそれらを隠す修正が入りました。MCP設定の${VAR}から解決した秘密情報についても、/mcp、/plugin、MCPの一覧・詳細、ログインエラーで表示しないよう直されています。
環境変数に入れたから安全、とは限りません。実行時に展開された値が、エラー画面、ログ、スクリーンショット、サポートへの転送で外へ出ることがあります。秘密情報の保存場所と、表示時のマスキングは別の管理項目です。
4. 終わらないWeb取得を300秒で止める
サーバーが接続を開いたまま応答を完了しない場合、WebFetchが無期限に待ち続ける問題が修正されました。標準では300秒で失敗します。必要ならCLAUDE_CODE_WEBFETCH_DEADLINE_MSで変更でき、0にすると期限を外せます。
無人処理では、遅いことより終わらないことの方が厄介です。1件の取得がぶら下がると、後続の集計も報告も来ません。長いタイムアウトを許す場合でも、「何分後に失敗として次へ進むか」は決めておくべきです。0は特殊な長時間処理に限った方が安全です。
日本企業で先に決める3つの境界
この更新を入れるだけで社内AIが安全になるわけではありません。先に決めるのは、製品設定より業務上の境界です。
接続の境界
誰が、どの端末とネットワークからログインできるかを決めます。社員、業務委託先、外出端末を同じ条件にすると、例外が増えて管理できません。最初は社内管理端末とVPN経由に絞り、必要な範囲だけ広げます。
確認指標は単純で構いません。許可ネットワーク外からのログインが拒否されること、拒否が監査ログに残ること、退職・契約終了後のアカウントが規定時間内に使えなくなること。この3つを受け入れテストにします。
操作の境界
AIが読める場所、編集できる場所、コマンドを実行できる場所を分けます。拒否ルールは代表的なパスだけでなく、シンボリックリンク、相対パス、作業ディレクトリ変更を含めて試します。
テストでは「許可した操作が通る」だけで終えない方がいい。禁止したファイルを別名の経路から触れないこと、解析できない複合コマンドが人の確認へ回ることも確かめます。正常系より、迂回経路の検査が効きます。
失敗の境界
外部サイト、MCP、プラグイン、クラウド認証は必ず止まります。そこで、タイムアウト後に再試行するのか、別経路へ切り替えるのか、人へ知らせて止めるのかを業務ごとに決めます。
請求、契約、公開、削除のように取り消しにくい処理は、自動再試行で二重実行させない。情報取得や下書き生成は、回数を制限して再試行する。この区別がないと、復旧機能が新しい事故を作ります。
導入判断は警告件数ではなく、境界テストで行う
2.1.268への更新後は、次の短い試験で十分です。
- 許可外ネットワークからゲートウェイへ接続し、警告と拒否の記録を確認する
- 禁止ディレクトリへ通常パスとリンク先パスの両方からアクセスし、同じ結果になるかを見る
- ダミーの秘密値を環境変数へ入れ、MCPやプラグインのエラー画面とログに出ないことを確かめる
- 応答を終了しない検証用HTTPサーバーへWebFetchを実行し、設定時間で失敗して後続処理へ進むかを見る
見る数字は、拒否すべき操作の阻止率、秘密値の表示件数、タイムアウト後に止まったジョブ数、復旧時の二重実行件数です。すべて0件を目指す項目と、100%を求める項目がはっきりしています。
今回の更新は、Claude Codeを単なる個人ツールから、管理されたAI業務環境へ寄せる修正です。ただし、警告は防御そのものではありません。設定の空欄を見つけた後、誰が直し、どのテストで閉じたと判断するか。そこまで決めて初めて、AIへ仕事を渡せます。
更新順にも注意が要ります。いきなり全端末へ配らず、まず管理者用の検証端末とゲートウェイ1台で試します。拒否ルール、MCP接続、既存のプラグイン、長時間のWeb取得が従来業務を壊さないことを確認してから対象を広げます。問題が出たときに前の版へ戻せるよう、現在のバージョン、設定、検証結果を同じ変更記録へ残しておく。新機能の採用より、この戻り道の方が本番運用では効きます。
なお、リリースにはセッション終了時に作業ディレクトリを削除するclaude self-hosted-runner --remove-session-stateも追加されています。初期値はオフです。機密データの残存を減らせる一方、障害調査に必要な記録まで消す可能性があります。保存期間と調査手順を決めずにオンへ切り替える機能ではありません。

