Опубликовано: 8 сентября 2026 г., Последнее обновление: 16 сентября 2026 г.
Начиная с версии Chrome 155, в Chrome обновлен способ применения ограничений корпоративных политик к расширениям, использующим API chrome.debugger .
Это изменение затрагивает только расширения, работающие в управляемых браузерах, где администратор явно настроил правила runtime_blocked_hosts , DisableScreenshots или Data Loss Prevention (DLP).
Если расширение работает в неуправляемом браузере или в корпоративной среде без этих конкретных ограничений политики, chrome.debugger продолжает работать в обычном режиме без каких-либо изменений.
График и этапы внедрения
- Chrome 155 Beta: 16 сентября 2026 г.
- Выпуск стабильной версии Chrome 155: 6 октября 2026 г.
Ключевые изменения в Chrome 155
Следующие изменения затрагивают только браузеры, управляемые корпоративными пользователями:
Ограничения для хостов: Если корпоративная политика (
ExtensionSettings) настраивает непустой список заблокированных хостов (runtime_blocked_hosts) для расширения, вызовchrome.debugger.attach()будет отклонен на всех целевых устройствах со следующими ошибками:"Host access is restricted by policy."Это справедливо даже в том случае, если в
runtime_allowed_hostsуказаны конкретные источники.Ограничения на создание скриншотов и предотвращение потери данных (DLP): Если создание скриншотов отключено корпоративной политикой (правила
DisableScreenshotsили Data Loss Prevention (DLP)),chrome.debugger.attach()завершится ошибкой:"Screenshot capture is restricted by policy."
Личные профили и неуправляемые среды по-прежнему имеют неограниченный доступ к chrome.debugger как и прежде.
The chrome.debugger API grants direct Chrome DevTools Protocol (CDP) access for powerful capabilities, including arbitrary script evaluation and network interception. Because CDP operates beneath the web platform's origin model, origin-based filtering cannot securely restrict it so Chrome 155 resolves this with an all-or-nothing model, validating enterprise policies upfront on chrome.debugger.attach() call.
Рекомендуемые действия разработчика
Обрабатывайте отклонения вложений корректно.
Всегда обрабатывайте отклонения вложений в коде вашего расширения, чтобы предоставлять пользователям корпоративного уровня понятную обратную связь:
// Promise-based (Manifest V3)
try {
await chrome.debugger.attach({ tabId }, "1.3");
} catch (error) {
if (error.message.includes("Host access is restricted by policy")) {
console.warn("Debugger attach blocked: Extension has host restrictions configured by enterprise policy.");
} else if (error.message.includes("Screenshot capture is restricted by policy")) {
console.warn("Debugger attach blocked: Screenshots or DLP restrictions are enforced by enterprise policy.");
} else {
console.warn("Debugger attach failed:", error.message);
}
}
// Callback-based
chrome.debugger.attach({ tabId }, "1.3", () => {
if (chrome.runtime.lastError) {
console.warn("Debugger attach failed:", chrome.runtime.lastError.message);
}
});
Рассмотрите альтернативные высокоуровневые API.
Если вашему расширению не требуется прямой доступ к CDP, рассмотрите возможность перехода на API расширений более высокого уровня, которые поддерживают детальные разрешения для хостов и работают совместно с корпоративными списками разрешенных и заблокированных хостов:
- Используйте API
chrome.scriptingдля выполнения скриптов и добавления стилей на разрешенные страницы. - Используйте API
chrome.declarativeNetRequestдля декларативного просмотра, изменения или блокировки сетевых запросов. - Используйте API
chrome.cookiesсо стандартными правами доступа хоста.
Руководство для администраторов предприятий
Администраторам предприятия, управляющим политиками расширений, следует учитывать, что расширения, требующие разрешения отладчика, не могут работать с частичными ограничениями на хосты ( runtime_blocked_hosts ). Если расширению требуется chrome.debugger , в ExtensionSettings не должны быть указаны заблокированные хосты.
Если захват скриншотов отключен с помощью правил DisableScreenshots или Data Loss Prevention (DLP), вызов chrome.debugger.attach() завершится ошибкой.
Организациям, которым требуются списки заблокированных хостов или ограничения на создание скриншотов, следует проверить, могут ли их внутренние или утвержденные расширения перейти на API более высокого уровня, такие как chrome.scripting или chrome.declarativeNetRequest .
Если для миграции затронутых расширений потребуется дополнительное время, администраторы могут временно вернуться к поведению, существовавшему до Chrome 155, запустив Chrome с флагом командной строки --disable-features=ExtensionDebuggerStrictPolicyRestrictions . Обратите внимание, что это временное решение, и этот флаг будет удален в Chrome 160.
Поделитесь своим мнением
Для получения более подробной информации обратитесь к документации API chrome.debugger . Если у вас есть вопросы или отзывы, свяжитесь с нами в группе Google по расширениям Chromium .