Установка Расширений В Chrome Без Интернета

Ситуация: Есть некий заказчик, сотрудники которого работают в закрытой сети.

Внутри, помимо прочего, есть сайты с приложениями, доступ к которым можно получить с помощью обычного Google Chrome. Внезапно им поставили задачу перейти на ГОСТ.

Повсюду.

Пришлось установить Крипто-Про, развернуть криптографию ГОСТ и установить известный в узких кругах софт CAdEs-плагин (или как там правильно в шапке) для работы с ЭP. Программное обеспечение состоит из двух частей - локальной программы и плагина для браузера, при установке последнего возникли трудности.

Думаю, что подобная ситуация может возникнуть не только с этим конкретным расширением, поэтому решил написать статью, обобщив необходимую информацию в одном месте.

Механизм установки был определен давно — групповые политики, благо Chrome их поддерживает уже довольно давно.

Однако все описания установки расширений через политики оказались, мягко говоря, неполными или устаревшими, а их использование в тестовом домене не привело к успеху.

При этом стоило включить доступ в Интернет, и расширения прекрасно устанавливались, но только если вы не указали место, где проверять наличие обновлений.

Политики установки описаны Здесь — сравнительно известное место в Google, которое легко находится встроенным поисковиком, но не содержит достаточно подробностей для настройки автоматической установки без доступа в Интернет. Если присмотреться, то абсолютно все примеры относятся к установке через https, причем последовательно с URL магазина Google. Другие результаты в Интернете намекали на возможность использования путей UNC (т. е.

общих файловых ресурсов) в качестве источника файлов.

Дальнейшие поиски спустя значительное время и множество подходов привели к этому: это нерешенная проблема в поддержке Google , где вдруг недостающим элементом, как позже выяснилось, оказался один из двух, необходимых для решения проблемы — шаблон XML-файла с примером, который у пользователя не работал.

Сам файл представляет собой структуру ответа Google Update с выделенным элементом приложения, расположением обновления и его версией.

Шаблон выглядит следующим образом:

   

<Эxml version='1.0' encoding='UTF-8'?> <gupdate xmlns=' http://www.google.com/update2/response ' protocol='2.0'> <app appid='ID'> <updatecheck codebase=' file:///UNC-PATH-TO-CRX-FILE ' version='VERSION' /> </app> </gupdate>

Больше всего меня порадовало указание, в каком формате правильно задать UNC-путь.

Быстрая проверка показала, что нет, не все так просто, и файл с расширением, заботливо скачанный в самом начале, оказался неиспользуемым.

А вот в соседних политиках с ExtensionInstallForcelist были некоторые дополнительные настройки, из которых нам удалось собрать полный пазл.

Итак, чтобы установить расширение в управляемый Chrome без доступа в Интернет, необходимо было настроить три политики, создать один файл и разместить само расширение в доступном месте.

Политика заключалась в следующем:

  • ExtensionInstallForcelist — создается список из 1 элемента с идентификатором расширения и UNC-путем через файл:/// для точности поиска;
  • Источники установки расширений - создан список из 1 элемента (но можно и двух), содержащий разрешенные пути для поиска источников обновлений.

    В описании указано, что значения являются регулярными выражениями, но рабочий пример содержал обычное совпадение с подстановочными знаками для проверки, что я и использовал, добавляя элемент со значением

    \\server\share\*

    .

  • И похоже, что элемент, на котором споткнулся автор того самого вопроса в техподдержку - это политика Настройки расширения , описание которого содержит крайне странный момент:
    Если экспериментальному параметру override_update_url присвоено значение True, расширение будет установлено и обновлено с использованием URL-адреса обновления, указанного в правиле ExtensionInstallForcelist или в поле update_url правила ExtensionSettings.
    Как выяснилось в ходе тестирования, если этот параметр не установлен или отключен, то если расширение внутри его CRX-файла содержит URL-адрес местоположения обновления в Интернет-магазине Chrome, Chrome не будет устанавливать его откуда-либо еще, даже если вы явно скажи это так.

    Проблема в том, что параметр экспериментальный, а значит, он может исчезнуть в любой момент, но пока он есть и пока установленная заказчиком текущая версия Google Chrome его понимает, задача будет выполнена.

    (Текущая последняя версия - 96.0 - понимает) По крайней мере сама политика позволяет указать URL поиска обновлений для расширения явно, т.е.

    если обработка override_update_url останавливается, то можно использовать ее для установки URL обновления вместо перенаправления через XML-файл .

    Значением политики Windows является JSON, сжатый в одну строку REG_SZ, а для успешной установки расширения — JSON вида

    { "id": { "override_update_url": true }}

После настройки политики Chrome таким образом расширение было успешно установлено из файла в общей папке.

Теги: #Google Chrome #Системное администрирование #chrome #никто не читает теги #оффлайн #расширение #расширения для браузера #расширение #извращения сисадмина

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.