Chrome VPN API: только ChromeOS, а не туннель для компьютера
chrome.vpnProvider — это API ChromeOS. Прокси в браузере и расширение, управляющее клиентом VPN на компьютере, — разные продукты с разным охватом.
Три продукта называют себя Chrome VPN, и только один из них — то, что описывает документация vpnProvider. Это API доступно в ChromeOS, где расширение может реализовать клиентскую часть VPN-подключения вместо обращения к установленному клиенту. Расширение-прокси меняет то, куда Chrome отправляет запросы. Расширение, управляющее отдельным клиентом на компьютере, — это панель управления для программы, работающей вне браузера. Понимание того, какой из трёх продуктов перед вами, отвечает на большинство вопросов, с которыми люди приходят к этому сравнению.
Замечание о платформе — первый фильтр
официальная справка по vpnProvider указывает ограничение доступности в собственном тексте, и упомянутое там разрешение относится к этому контракту. Добавление vpnProvider в манифест в Windows не создаёт этот интерфейс.
Прочитайте строку о платформе раньше списка разрешений, потому что разрешение имеет смысл только там, где API существует.
Расширение-прокси: граница — браузер
Расширение-прокси использует настройки прокси браузера, чтобы отправлять запросы Chrome через сервер. Оно кроссплатформенное и честно говорит о своём охвате. Другие приложения сохраняют собственные подключения, и часть трафика браузера может по-прежнему не идти по заданному маршруту. Это изменение на уровне браузера, а не системный туннель.
Если требование — «этот один сайт, в этом одном браузере», это подходящий инструмент.
Расширение и сопутствующее приложение: туннель принадлежит приложению
Клиент VPN для компьютера обычно устанавливает службу и виртуальный адаптер, а его расширение — это пульт, который обращается к приложению. Туннель существует на уровне операционной системы, поэтому он охватывает приложения, которых браузер никогда не видит. Разрешения расширения описывают канал управления, а не шифрование. Удаление расширения оставляет туннель нетронутым, а удаление приложения ломает расширение.
Эта асимметрия — самый быстрый тест. Отключите расширение и посмотрите, продолжают ли другие приложения пользоваться VPN.
Провайдер ChromeOS: расширение реализует клиент
В ChromeOS модель провайдера иная по своей сути. Расширение получает сообщения конфигурации и платформы, создаёт объект конфигурации, сообщает состояние подключения обратно платформе и передаёт трафик через API, а не через отдельно установленный клиент. Это ближе к написанию клиента VPN, чем к его настройке. API также предполагает конечную точку, которую вы уже обслуживаете, поэтому она не предоставляет сервис.
Именно поэтому в справке говорится о реализации клиента, а не о подключении к нему.
Как читать заявление продукта с оглядкой на эти три
Спросите, какие операционные системы поддерживаются, а затем — какой компонент владеет подключением. Если ответ — прокси в браузере, ожидайте охват браузера. Если ответ — сопутствующее приложение, ожидайте системный охват, пока это приложение работает. Если ответ — провайдер ChromeOS, ожидайте работу в ChromeOS и больше нигде. Страница продукта, которая говорит «Chrome VPN» и не отвечает на эти два вопроса, не сказала вам, что он делает.
Проверьте также разрешения на соответствие заявленной задаче. Доступ к сайтам и управление прокси — разные разрешения, и ни одно из них не становится оправданным из-за того, что API другой платформы случайно носит то же имя.
О чём не говорит ни один из них
Интерфейс ничего не говорит о том, кто обслуживает конечную точку, что она записывает в журнал и доступен ли сервис там, где вы живёте. Это свойства провайдера, а не API. Существующий туннель не обязательно является туннелем, которому стоит доверять, а существующее разрешение не является возможностью на вашей платформе. Держите эти две оценки раздельно.
Затем проверьте заявление на устройстве, которым вы действительно пользуетесь, с приложением, которое не является браузером.