本文へスキップ
MameTechNews
フロントエンド

Chrome 155、管理ブラウザのdebugger接続を一括で拒否

## POINTS

  • 影響は管理対象ブラウザで、ブロック対象ホスト、スクリーンショット禁止、DLPがある場合に限る。
  • ブロック対象ホストが空でないと、許可リスト付きでもattachは全ターゲットで拒否される。
  • 一時回避の起動フラグはChrome 160で削除される。不要ならscriptingなど上位APIへ移す。

Chrome for Developersは、Chrome 155で企業ポリシーとchrome.debugger APIの関係を変えると説明している。ベータは9月16日、安定版の展開は10月6日。影響があるのは、管理対象ブラウザで管理者がruntime_blocked_hosts、DisableScreenshots、またはデータ損失防止(DLP)の規則を明示している場合だ。

ExtensionSettingsでruntime_blocked_hostsが空でないと、chrome.debugger.attach()はすべてのターゲットで拒否され、メッセージは「Host access is restricted by policy.」になる。runtime_allowed_hostsにオリジンが含まれていても同じだ。スクリーンショット禁止またはDLPが有効なときも、attachは「Screenshot capture is restricted by policy.」で失敗する。Chrome DevTools ProtocolはWebのオリジンモデルより下でスクリプト実行や通信の傍受ができるため、Chromeはオリジン単位の部分許可をやめ、接続の時点で全部許すか全部拒むかを選んだ。

これらのポリシーがない管理環境と、個人プロファイルでは、これまでどおり接続できる。移行の時間が要る管理者は、起動フラグ--disable-features=ExtensionDebuggerStrictPolicyRestrictionsでChrome 155以前の挙動へ一時的に戻せる。このフラグはChrome 160で削除される。debugger権限が必須でなければ、スクリプト実行はchrome.scripting、通信の変更はchrome.declarativeNetRequestへ移すのが案内されている。社内配布の拡張は、ブロック対象ホストとスクリーンショット禁止の有無を展開中に確認する。