Поделиться через


Перенос расширения с манифеста версии 2 на версию 3

В этой статье перечислены важные изменения, реализованные в манифесте версии 3, который является следующей версией платформы расширений Chromium. Инструкции по переносу расширения в Manifest версии 3 см. в статье Общие сведения о манифесте версии 3 — разработчики Chrome.

Удаленно размещенный код

Сегодня некоторые части кода расширений размещаются удаленно и не включаются в пакет расширений во время проверки. Хотя это позволяет изменять код без повторного отправки расширения в надстройках Microsoft Edge, после установки его можно использовать.

Чтобы убедиться, что расширения в надстройках Microsoft Edge проверены, команда расширений Microsoft Edge запрещает расширениям использовать удаленно размещенный код. Это изменение делает расширения более безопасными.

Разработчикам потребуется упаковать и отправить весь код, используемый расширением, для проверки. Кроме того, функцию eval() можно использовать в изолированной среде.

Разрешения узла во время выполнения

Во время установки расширения могут запрашивать полные разрешения на доступ ко всем сайтам и содержимому. Эти разрешения позволяют расширениям работать с минимальным вмешательством и поэтому представляют риск для конфиденциальности и безопасности пользователей. Чтобы повысить прозрачность, команда расширений Microsoft Edge предоставляет элементы управления, позволяющие пользователям разрешать или ограничивать доступ к веб-сайтам во время выполнения.

Запросы между источниками в скриптах содержимого

Сегодня скрипты содержимого могут запрашивать доступ к любому источнику, включая источники, которые не разрешены веб-сайтом. Поведение нарушает принципы разных источников. В дальнейшем команда расширений Microsoft Edge требует, чтобы скрипты содержимого имели те же разрешения, что и веб-страница, на которую внедряются скрипты. Это требование закрывает потенциальную лазейку безопасности.

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

API веб-запросов

Команда расширений Microsoft Edge заменяет API веб-запросовдекларативным API-интерфейсом запросов, но мы по-прежнему сохраняем возможности наблюдения API веб-запросов. Рекомендуется использовать только API-интерфейсы декларативного чистого запроса (DNR), а не API веб-запросов, за исключением некоторых конкретных сценариев, когда расширение требует возможности наблюдения API веб-запросов.

Это изменение окажет положительное влияние на расширения, использующие функциональные декларативные возможности. По мере того как все больше расширений переходят на декларативные API-интерфейсы net request, это изменение улучшит конфиденциальность пользователей, что способствует доверию при использовании расширений.

Предприятия могут продолжать использовать блокирующее поведение API веб-запросов для расширений, управляемых с помощью корпоративных политик. Дополнительные сведения о политиках расширений см. в разделе Расширения в Microsoft Edge — политики.

Фоновые рабочие роли служб

Рабочие роли службы доступны для тестирования в канале Canary Preview Microsoft Edge. Сведения о переносе расширений с фоновых страниц на рабочие роли службы см. в статье Миграция на рабочую роль службы. Команда расширений Microsoft Edge оценивает и изучает влияние, которое это изменение оказывает как для разработчиков, так и для пользователей.

Когда эти изменения доступны в Microsoft Edge

Текущая реализация API декларативного net request доступна в каналах Microsoft Edge Stable и Beta. Протестируйте изменения и предоставьте отзыв.

Команда расширений Microsoft Edge публикует обновления в нашем блоге. Вы можете оставить отзыв об изменениях через Microsoft Tech Community; см. статью Изменения манифеста версии 3 теперь доступны в Microsoft Edge.