Mozilla sẽ bắt đầu chấp nhận các tiện ích bổ sung dựa trên phiên bản thứ ba của bản tuyên ngôn Chrome

21 ноября каталог AMO (addons.mozilla.org) начнёт принимать и заверять цифровой подписью дополнения, использующие третью версию манифеста Chrome. Указанные дополнения можно будет протестировать в ночных сборках Firefox. В стабильных выпусках включение поддержки третьей версии манифеста будет произведено в Firefox 109, намеченном на 17 января 2023 года. Поддержка второй версии манифеста в обозримом будущем будет сохранена, но в конце 2023 года, после оценки динамики перевода дополнений на третью версию манифеста, будет рассмотрен вопрос о возможности перевода поддержки второй версии манифеста в разряд устаревших.

Tệp kê khai Chrome xác định các khả năng và tài nguyên có sẵn cho các tiện ích mở rộng được viết bằng API WebExtensions. Bắt đầu từ phiên bản 57, Firefox hoàn toàn chuyển sang sử dụng API WebExtensions để phát triển tiện ích bổ sung và ngừng hỗ trợ công nghệ XUL. Việc chuyển đổi sang WebExtensions giúp có thể thống nhất việc phát triển các tiện ích bổ sung với nền tảng Chrome, Opera, Safari và Edge, đơn giản hóa việc chuyển các tiện ích bổ sung giữa các trình duyệt web khác nhau và cho phép sử dụng đầy đủ chế độ đa quy trình của hoạt động (các tiện ích bổ sung WebExtensions có thể được thực thi trong các quy trình riêng biệt, tách biệt với phần còn lại của trình duyệt). Để thống nhất việc phát triển các tiện ích bổ sung với các trình duyệt khác, Firefox cung cấp khả năng tương thích gần như hoàn toàn với phiên bản thứ hai của bảng kê khai Chrome.

В настоящее время в Chrome ведётся работа по переходу на третью версию манифеста, а поддержка второй версии будет прекращена в январе 2024 года. Главной целью внесённых в новую версию изменений является упрощение создания безопасных и высокопроизводительных дополнений, и усложнение возможности создания небезопасных и медленных дополнений. Так как третья версия манифеста стала объектом критики и приведёт к нарушению работы многих дополнений для блокирования нежелательного контента и обеспечения безопасности, компания Mozilla решила отойти от обеспечения полной совместимости с манифестом в Firefox и реализовать иначе некоторые изменения.

Điểm không hài lòng chính đối với phiên bản thứ ba của bản tuyên ngôn có liên quan đến việc dịch API webRequest sang chế độ chỉ đọc, cho phép bạn kết nối các trình xử lý của riêng mình để có toàn quyền truy cập vào các yêu cầu mạng và có thể sửa đổi lưu lượng truy cập một cách nhanh chóng. API này được sử dụng trong uBlock Origin và nhiều tiện ích bổ sung khác để chặn nội dung không phù hợp và cung cấp bảo mật. Thay vì API webRequest, phiên bản thứ ba của tệp kê khai cung cấp API NetRequest khai báo có khả năng giới hạn, cung cấp quyền truy cập vào công cụ lọc tích hợp xử lý độc lập các quy tắc chặn, không cho phép sử dụng thuật toán lọc của riêng nó và không cho phép thiết lập các quy tắc phức tạp chồng chéo lên nhau tùy theo điều kiện.

Среди особенностей реализации нового манифеста в Firefox:

  • API lọc nội dung khai báo mới đã được thêm vào, nhưng không giống như Chrome, việc hỗ trợ chế độ chặn cũ của API webRequest vẫn chưa bị ngừng.
  • В манифесте определена замена фоновых страниц на вариант Service Workers, работающий в виде фоновых процессов (Background Service Workers). Для обеспечения совместимости в будущем в Firefox будет реализована поддержка Service Workers, но в настоящее время вместо них предложен новый механизм Event Pages, который более привычен для web-разработчиков, не требует полной переработки дополнений и устраняет ограничения, связанные с применением Service Workers. Event Pages позволит привести существующие дополнения с фоновыми страницами к требованиям третьей версии манифеста, сохранив при этом доступ ко всем возможностям, необходимым для работы с DOM.
  • Mô hình yêu cầu quyền chi tiết mới - tiện ích bổ sung sẽ không thể được kích hoạt cho tất cả các trang cùng một lúc (quyền “all_urls” đã bị xóa) mà sẽ chỉ hoạt động trong ngữ cảnh của tab đang hoạt động, tức là. người dùng sẽ cần xác nhận rằng tiện ích bổ sung hoạt động cho từng trang web. Trong Firefox, tất cả các yêu cầu truy cập dữ liệu trang web sẽ được coi là tùy chọn và quyết định cuối cùng về việc cấp quyền truy cập sẽ do người dùng đưa ra, họ có thể quyết định có chọn lọc tiện ích bổ sung nào sẽ cấp quyền truy cập vào dữ liệu của họ trên một trang web cụ thể.

    Для управления полномочиями в интерфейс добавлена новая кнопка «Unified Extensions», которую уже можно протестировать в ночных сборках Firefox. Кнопка предоставляет средства для непосредственного управления тем, к каким сайтам имеет доступ каждое дополнение — пользователь может предоставить и отозвать доступ дополнения к любому сайту. Управление полномочиями применяется только к дополнениям на основе третьей версии манифеста, для дополнений на второй версии манифеста гранулированное управление доступом к сайтам не производится.

    Mozilla sẽ bắt đầu chấp nhận các tiện ích bổ sung dựa trên phiên bản thứ ba của bản tuyên ngôn Chrome
  • Thay đổi trong việc xử lý các yêu cầu Xuất xứ chéo - theo bảng kê khai mới, các tập lệnh xử lý nội dung sẽ phải tuân theo các hạn chế về quyền tương tự như đối với trang chính mà các tập lệnh này được nhúng vào (ví dụ: nếu trang không có quyền truy cập vào API vị trí thì các tiện ích bổ sung của tập lệnh cũng sẽ không nhận được quyền truy cập này). Thay đổi này được thực hiện đầy đủ trong Firefox.
  • API на основе Promise. Firefox поддерживает данный API и для третьей версии манифеста перенесёт его в пространство имён «chrome.*».
  • Запрет выполнения кода, загруженного с внешних серверов (речь про ситуации, когда дополнение подгружает и выполняет внешний код). В Firefox применяется блокировка внешнего кода и разработчики Mozilla добавили дополнительные техники отслеживания загрузок кода, предлагаемые в третьей версии манифеста. Для скриптов обработки контента представлена отдельная политика ограничения доступа к контенту (CSP, Content Security Policy).

Nguồn: opennet.ru

Thêm một lời nhận xét