Автоматическая установка расширений для Chromium-Gost

В админских делах слишком часто приходится воевать со всевозможными вариантами работы с электронными ключами для бухгалтерии. В силу того что для ЛК налоговой существует в плане работы только два варианта работы с электронными ключами - Yandex-браузер и Chromium-Gost написал себе скрипт автоустановки любых нужных расширений в Chromium-Gost. Yandex-браузер по причине монструозности в этом плане не рассматриваю ;)
Итак вводная - рабочих методов автоустановки я обнаружил ровно три:
- Автоматическая установка плагинов для x64-браузера при первом запуске. Потом их надо будет включить через интерфейс управления расширениями.
- Автоматическая установка плагинов для x86-браузера при первом запуске. Потом их надо будет включить через интерфейс управления расширениями.
- Принудительная установка неотключаемых пользователем плагинов через политики. Независима от разрядности браузера.
@ECHO OFF
:: Автоматическая установка плагинов для x64-браузера при первом запуске. Потом их надо будет включить.
SET "INSTALL_SC=PROCEDURE_x64"
:: Автоматическая установка плагинов для x86-браузера при первом запуске. Потом их надо будет включить.
:: SET "INSTALL_SC=PROCEDURE_x86"
:: Принудительная установка неотключаемых пользователем плагинов через политики.
:: SET "INSTALL_SC=PROCEDURE_force"
SET "BEGIN_MARKER=:ENDFILE1"
SET "END_MARKER=:ENDFILE2"
FOR /F "usebackq tokens=1 delims=:" %%a IN (`FINDSTR /N /B /C:"%BEGIN_MARKER%" "%~0"`) DO SET "SKIP_LINE=%%a"
CALL :WORK "%SKIP_LINE%" "%END_MARKER%" "%~0"
GOTO :EOF

:WORK
FOR /F "usebackq skip=%~1 tokens=1 eol=; delims=;" %%a IN (`TYPE "%~3"`) DO IF NOT "%%a"=="%~2" (CALL :%INSTALL_SC% "%%a") ELSE (GOTO :EOF)
GOTO :EOF

:PROCEDURE_x64
REG add "HKLM\Software\Wow6432Node\Google\Chrome\Extensions\%~1" /v update_url /t REG_SZ /d "https://clients2.google.com/service/update2/crx" /f
GOTO :EOF

:PROCEDURE_x86
REG add "HKLM\Software\Google\Chrome\Extensions\%~1" /v update_url /t REG_SZ /d "https://clients2.google.com/service/update2/crx" /f
GOTO :EOF

:PROCEDURE_force
ECHO REG add HKLM\SOFTWARE\Policies\Chromium\ExtensionInstallForcelist /v 1 /t REG_SZ /d "%~1;https://clients2.google.com/service/update2/crx" /f
GOTO :EOF

:ENDFILE1
iifchhfnnmpdbibifmljnfjhpififfog; CryptoPro Extension for CAdES Browser Plug-in
ohedcglhbbfdgaogjhcclacoccbagkjg; Адаптер Рутокен Плагин
pbefkdcndngodfeigfdgiodgnmbgcfha; Расширение для плагина Госуслуг.
:ENDFILE2

Комментарии

Ах да - строки вида "iifchhfnnmpdbibifmljnfjhpififfog" -это идентификатор расширения в магазине гугла. Смотрится в расширениях при включенном режиме разработчика...

---
упс..

Здравствуйте! Скажите пожалуйста - с каким раскширением сохранять срипт и куда положить расширения? Проблема в установке оных БЕЗ доступа к интернетам

Ну расширение скрипта или CMD или BAT... Но вот по поводу установки без интернета даже не задумывался - вроде как браузер предполагает работу онлайн так что и с оффлайн установкой расширений непонятно зачем возиться.
Именно из файла сохраненное расширение таким способом поставить не удастся.

---
упс..

Так - установка из файла расширения все-таки возможна ;)

Притом базовый вариант предполагает размещение файла расширения на собственном WEB-сервере, но также есть вариант и с локальным путем(в том числе относительным!).

Найду время для тестирования и модифицирую скрипт под три варианта: из репозитория гугла, из собственного WEB-сервера, из файловой системы по относительному от расположения инсталлятора абсолютному пути...

Хотя в принципе при установке через политики собственно установка происходит в момент запуска браузера и текущий контекст соответственный. Значит пути должны быть абсолютными: или WEB или локальный или UNC. Можно конечно в момент установки выполнять копирование из относительного пути по отношению к инсталлятору в абсолютный путь, но тут слишком много нюансов возникает - так что я пожалуй ограничусь вариантами абсолютного пути - ну нет у меня времени писать полностью корректный полноценный инсталлятор, а неполноценный или некорректный - нет желания ;)

Времени тут часа 3-4 надо чтобы проверить все нюансы... Пока столько времени уделить вопросу не могу, но обязательно сделаю...

---
упс..

Страницы