Как переопределить требование подписи надстройки Firefox
Следующее руководство проведет вас через этапы переопределения принудительной подписи надстройки в стабильной и бета-версии Firefox. Вы сможете устанавливать неподписанные надстройки в версиях Firefox, в которых это невозможно.
Mozilla реализовала надстройку подписи функция безопасности в Firefox некоторое время назад и сделала ее обязательной в Firefox 48 для стабильного и бета-канала.
Это означает, что пользователи Firefox, которые используют стабильную или бета-версию браузера, могут устанавливать только подписанные надстройки в браузере. Пользователи Firefox Dev, Nightly и ESR могут устанавливать неподписанные надстройки. однако после внесения изменений в предпочтения.
Разработчики дополнений получают доступ к небрендированному Firefox сборки, которые являются стабильными версиями Firefox, которые по-прежнему поддерживают этот параметр.
Все надстройки, отправленные в основной репозиторий надстроек Mozilla, подписаны, но это не обязательно относится к надстройкам, распространяемым по другим каналам.
Надстройки, предоставляемые приложениями, приходит на ум программное обеспечение безопасности, на платформах разработки, таких как Github, и старые надстройки, которые больше не разрабатываются, могут не подписываться. В этом случае эти надстройки нельзя установить в стабильной или бета-версии Firefox.
Обновить : Метод вроде больше не работает. Вам необходимо установить и использовать Firefox ESR, чтобы отключить подпись надстроек в веб-браузере Firefox (если вы не хотите использовать Firefox Dev или Nightly builds).
Все, что требуется в Firefox ESR, — это установить для параметра xpinstall.signatures.required значение False в about: config.
Отменить принудительное подписание надстройки Firefox
Этот метод требует, чтобы вы создали два новых файла и поместили их в основную папку установки / запуска Firefox.
Шаг 1. Создайте файл config.js

- Сначала создайте файл config.js. Вы можете сделать это в Windows, щелкнув правой кнопкой мыши на рабочем столе и выбрав «Создать»> «Текстовый документ».
- Оставьте имя на время, а затем откройте текстовый документ, дважды щелкнув по нему.
- Вставьте следующий код в документ. Убедитесь, что вы скопировали все это, включая два // в первой строке (см. Снимок экрана выше).
//
пытаться {
Components.utils.import («ресурс: //gre/modules/addons/XPIProvider.jsm», {})
.eval («SIGNED_TYPES.clear ()»);
}
catch (ex) {}
- После этого сохраните документ.
- Щелкните его правой кнопкой мыши и выберите переименовать.
- Назовите его config.js. Убедитесь, что он называется config.js, а не config.js.txt.
- Переместите файл config.js в папку установки Firefox.
- На Windows , это либо C: \ Program Files \ Mozilla Firefox \, либо C: \ Program Files (x86) \ Mozilla Firefox \.
- На Linux , это / usr / lib / firefox- или / usr / lib64 / firefox-
- На Mac , это /Applications/Firefox.app
Обратите внимание, что вы можете выбрать любой каталог для установки, и что вы также можете запустить Firefox как переносимую программу. Соответственно отрегулируйте путь к программе. Убедитесь, что вы поместили файл в корневую папку программы Firefox.
Шаг 2. Создайте config-prefs.js

- Создайте второй текстовый документ на рабочем столе и затем откройте его в редакторе.
- Вставьте в него следующие строки:
pref («general.config.obscure_value», 0);
pref («general.config.filename», «config.js»);
- Переименуйте файл в config-prefs.js.
- Переместите файл в папку defaults \ pref папки программы Firefox, например C: \ Program Files \ Mozilla Firefox \ по умолчанию \ pref
Перезагрузите Firefox.
Шаг 3. Установите неподписанные надстройки в стабильной или бета-версии Firefox.
После этого вы можете снова установить любое дополнение, подписанное или неподписанное, в Firefox Stable или Beta, как и раньше.
Что происходит в фоновом режиме
Вы, вероятно, задаетесь вопросом, что делают несколько строк кода, и безопасно ли это или опасно.
Не вдаваясь в подробности, вот что происходит:
Первые фрагменты кода, добавленные в файл config.js, загружают один из файлов конфигурации Firefox и удаляют информацию из константы Signed_Types в этом файле. Так получилось, что эта константа определяет типы надстроек и расширений, которые необходимо подписать для установки.
Вы можете помнить, что некоторые расширения, например темы, не нужно подписывать. Таким образом, код очищает константу от всех типов надстроек, поэтому ни одна из них не требует подписи.
Настройки во втором файле говорят Firefox загружать файл config.js при запуске.
Вывод
Метод удаляет принудительное подписание надстройки в Firefox. Довольно удивительно, что это так просто, учитывая, что одним из основных аргументов в пользу принудительной подписи надстройки является безопасность.
Благодаря Говард а также Мишель кто уведомил меня о фокусе.
