Разрешения расширения

Каждое разрешение Chrome, включая host-доступ ко всем сайтам

BusinessProxy использует Chrome proxy API, чтобы применять управляемый браузерный маршрут после входа. Расширение не объявляет content-скрипты, но запрашивает host-доступ ко всем сайтам, чтобы Chrome мог передавать proxy-authentication challenge для маршрутизируемых запросов.

Chrome может показать широкое предупреждение о доступе ко всем сайтам. Причина — обработка proxy-аутентификации, а не внедрение в содержимое страниц.

Запись в манифестеНазначениеОграничение
proxyНастраивает proxy в Chrome, пока BusinessProxy подключён.Применяется к proxy-конфигурации Chrome, не к сетевым настройкам ОС.
storageХранит минимальное состояние расширения и читает managed-настройки Chrome Enterprise.Не хранит переиспользуемые proxy-пароли.
alarmsВыполняет heartbeat, обработку истечения срока и cleanup proxy-сессии.Только фоновые плановые проверки.
webRequestПолучает proxy-authentication challenge для маршрутизируемых запросов браузера.Используется для proxy-auth событий, не для инспекции DOM.
webRequestAuthProviderОтвечает на proxy-auth challenge краткоживущими учётными данными сессии.Не переиспользует пароль аккаунта.
host_permissions: <all_urls>Позволяет Chrome передавать proxy-auth challenge для запросов через настроенный proxy независимо от сайта назначения.Широкий host permission; раскрываем прямо. Content-скрипты не объявлены.

Что пакет не объявляет

  • Нет `content_scripts`.
  • Нет permission `scripting`.
  • Нет permission `tabs`.
  • Нет permission `privacy`.
  • Нет разрешения на внедрение в страницы для рекламы или изменения DOM.

Зачем нужен широкий host permission

Proxy-аутентификация происходит, когда Chrome отправляет запрос через настроенный proxy. Так как пользователь может маршрутизировать любой одобренный рабочий сайт, Chrome должен передавать auth challenge для произвольных URL назначения. Расширение отвечает на эти challenge текущими краткоживущими proxy-учётными данными. Поэтому host permission широкий.

Частые вопросы

Почему расширение запрашивает доступ ко всем сайтам?

Chrome требует host permission для всех сайтов, чтобы расширение могло получать и отвечать на proxy-authentication challenge для запросов, которые Chrome отправляет через настроенный proxy. У расширения нет content-скриптов; оно не внедряется в страницы и не изменяет их содержимое.

Почему нельзя сказать «нет широкого host-доступа»?

Потому что это неточно. Расширение запрашивает host permission `<all_urls>`. Точная формулировка уже: нет content-скриптов, нет внедрения в страницы, а host-доступ ко всем сайтам нужен только для обработки proxy-auth challenge.