Opublikowano: 8 września 2026 r.
Od Chrome 155 Chrome aktualizuje sposób, w jaki ograniczenia zasad firmowych są stosowane do rozszerzeń korzystających z interfejsu chrome.debugger API.
Ta zmiana dotyczy tylko rozszerzeń działających w zarządzanych przeglądarkach, w których administrator skonfigurował reguły runtime_blocked_hosts, DisableScreenshots lub zapobiegania utracie danych (DLP).
Jeśli rozszerzenie działa w niezarządzanej przeglądarce lub w środowisku firmowym bez tych konkretnych ograniczeń zasad, interfejs chrome.debugger nadal działa normalnie i nie ulega zmianom.
Harmonogram i wdrażanie
- Chrome 155 Beta: 16 września 2026 r.
- Wdrożenie stabilnej wersji Chrome 155: 6 października 2026 r.
Najważniejsze zmiany w Chrome 155
Poniższe zmiany dotyczą tylko zarządzanych przeglądarek w firmach:
Ograniczenia hosta: jeśli zasada firmowa (
ExtensionSettings) konfiguruje dla rozszerzenia niepustą listę zablokowanych hostów (runtime_blocked_hosts), żądaniechrome.debugger.attach()jest odrzucane na wszystkich platformach docelowych z tym błędem:"Host access is restricted by policy."Dotyczy to również sytuacji, gdy w
runtime_allowed_hostsznajdują się konkretne źródła.Ograniczenia dotyczące zrzutów ekranu i zapobiegania utracie danych: jeśli przechwytywanie zrzutów ekranu jest wyłączone przez zasady przedsiębiorstwa (
DisableScreenshotslub reguły zapobiegania utracie danych),chrome.debugger.attach()kończy się niepowodzeniem z tym komunikatem:"Screenshot capture is restricted by policy."
Profile osobiste i środowiska niezarządzane nadal mają nieograniczony dostęp chrome.debugger jak dotychczas.
Interfejs chrome.debugger API zapewnia bezpośredni dostęp do protokołu narzędzi deweloperskich w Chrome (CDP), co daje dostęp do zaawansowanych funkcji, takich jak dowolne wykonywanie skryptów i przechwytywanie sieci. CDP działa poniżej modelu pochodzenia platformy internetowej, więc filtrowanie oparte na pochodzeniu nie może go bezpiecznie ograniczyć. Chrome 155 rozwiązuje ten problem za pomocą modelu wszystko albo nic, który z wyprzedzeniem weryfikuje zasady przedsiębiorstwa podczas wywołania chrome.debugger.attach().
Zalecane działania dewelopera
Płynna obsługa odrzuceń załączników
Zawsze obsługuj odrzucenia dołączania w kodzie rozszerzenia, aby przekazywać użytkownikom biznesowym jasne informacje zwrotne:
// 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);
}
});
Rozważ alternatywne interfejsy API wysokiego poziomu
Jeśli Twoje rozszerzenie nie wymaga bezpośredniego dostępu do platformy CDP, rozważ przejście na interfejsy API rozszerzeń wyższego poziomu, które obsługują szczegółowe uprawnienia hosta i współpracują z listami dozwolonych i zablokowanych hostów w firmach:
- Używaj interfejsu
chrome.scriptingAPI do wykonywania skryptów i wstawiania stylów na dozwolonych stronach. - Użyj interfejsu
chrome.declarativeNetRequestAPI, aby deklaratywnie sprawdzać, modyfikować lub blokować żądania sieciowe. - Używaj interfejsu API
chrome.cookiesze standardowymi uprawnieniami hosta.
Wskazówki dla administratorów przedsiębiorstw
Administratorzy firmowi zarządzający zasadami dotyczącymi rozszerzeń powinni pamiętać, że rozszerzenia wymagające uprawnień debugera nie mogą działać z częściowymi ograniczeniami hosta (runtime_blocked_hosts). Jeśli rozszerzenie wymaga uprawnień chrome.debugger, nie może mieć zablokowanych hostów skonfigurowanych w ExtensionSettings.
Jeśli przechwytywanie zrzutów ekranu jest wyłączone za pomocą DisableScreenshots lub reguł zapobiegania utracie danych (DLP), funkcja chrome.debugger.attach() nie będzie działać.
Organizacje, które wymagają list blokowania hostów lub ograniczeń dotyczących zrzutów ekranu, powinny sprawdzić, czy ich wewnętrzne lub zatwierdzone rozszerzenia mogą przejść na interfejsy API wyższego poziomu, takie jak chrome.scripting lub chrome.declarativeNetRequest.
Podziel się opinią
Więcej informacji znajdziesz w chrome.debuggerdokumentacji API. Jeśli masz pytania lub chcesz podzielić się opinią, wejdź na grupę dyskusyjną Google dotyczącą rozszerzeń Chromium.