Chrome マニフェストのバージョン 2 および 3 に対する Firefox のサポートの計画

Mozilla の開発者は、Firefox での Chrome マニフェストのバージョン 127 および XNUMX のサポートに関連する計画に関する情報を更新しました。 Google は、Chrome XNUMX (Dev、Canary、Beta) のテスト リリースでマニフェストの XNUMX 番目のバージョンを使用するアドオンのサポートを今年 XNUMX 月に停止する予定です。安定版ブランチでは、マニフェストの XNUMX 番目のバージョンのサポートは XNUMX 月までに停止されます。

一方、Mozilla は、近い将来、マニフェストの 2 番目のバージョンのサポートを停止することはなく、マニフェストの 3 番目のバージョンでは利用できない機能を使用するアドオンを起動する機能を保持します。 Firefox を Chrome マニフェストのバージョン 3 と完全な互換性を持たないという決定は引き続き有効です。 Firefox は本格的な webRequest API を保持しますが、Chrome では読み取り専用モードに切り替わります。

Firefox はまた、イベント ページ メカニズムを使用して、DOM に基づくバックグラウンド スクリプトの実行のサポートを維持します。その代わりに、マニフェストの 3 番目のバージョンでは Service Worker の使用が必要です。 Service Worker に基づくバックグラウンド スクリプトは Firefox ではまだサポートされていませんが、開発者にはアドオンでイベント ページ ベースのハンドラーと Service Worker に基づくスクリプトの両方を定義する機会が与えられ、これによりアドオンを作成できるようになります。これらはマニフェストの 3 番目のバージョンに準拠しており、Chrome および Firefox で動作します。

Chrome マニフェストは、WebExtensions API を使用して作成された拡張機能で使用できる機能とリソースを定義します。 バージョン 57 以降、Firefox はアドオンの開発に WebExtensions API の使用に完全に切り替えられ、XUL テクノロジーのサポートを停止しました。 WebExtensions への移行により、Chrome、Opera、Safari、Edge プラットフォームでのアドオンの開発を統合できるようになり、異なる Web ブラウザ間でのアドオンの移植が簡素化され、WebExtensions のマルチプロセス モードを完全に使用できるようになりました。操作 (WebExtensions アドオンは、ブラウザーの残りの部分から分離された別個のプロセスで実行できます)。 アドオンの開発を他のブラウザと統合するために、Firefox は Chrome マニフェストの XNUMX 番目のバージョンとのほぼ完全な互換性を提供します。

安全で高パフォーマンスのアドオンの作成を容易にし、安全ではない低速なアドオンの作成を困難にする取り組みの一環として、Google はマニフェストのバージョン 3 を開発しました。マニフェストの 3 番目のバージョンに対する主な不満は、webRequest API の読み取り専用モードへの変換によって引き起こされます。これにより、ネットワーク リクエストに完全にアクセスでき、オンザフライでトラフィックを変更できる独自のハンドラーを接続できるようになりました。 。 webRequest API の代わりに、マニフェストの 3 番目のバージョンでは declarativeNetRequest API が追加されました。これは機能が制限されており、組み込みフィルタリング エンジンへのアクセスを提供します。このエンジンはブロック ルールを個別に処理し、独自のフィルタリング アルゴリズムの使用を許可しません。 。

Firefox でマニフェストの 3 番目のバージョンを実装する機能には次のようなものがあります。

  • 新しい宣言型コンテンツ フィルタリング API が追加されましたが、Chrome とは異なり、webRequest API の古いブロック モードのサポートは廃止されていません。
  • イベント ページ メカニズムが実装されました。これは Web 開発者にとって馴染みがあり、アドオンを完全に作り直す必要がなく、Service Worker の使用に関連する制限がなくなりました。イベント ページを使用すると、DOM の操作に必要なすべての機能へのアクセスを維持しながら、既存のバックグラウンド ページの追加がマニフェストの 3 番目のバージョンの要件に準拠できるようになります。
  • 新しい詳細な権限リクエスト モデル - アドオンは、すべてのページに対して一度にアクティブ化することはできません (「all_urls」権限は削除されています)。ただし、アクティブなタブのコンテキストでのみ機能します。 ユーザーは、アドオンが各サイトで機能することを確認する必要があります。 Firefox では、サイト データへのアクセス要求はすべてオプションとみなされ、アクセス許可の最終決定はユーザーによって行われ、ユーザーは特定のサイト上のデータへのアクセスをどのアドオンに許可するかを選択的に決定できます。

    権限を管理するために、「統合拡張機能」ボタンがインターフェイスに追加され、各拡張機能がアクセスできるサイトを直接制御できます。ユーザーは任意のサイトへの拡張機能のアクセスを許可および取り消しできます。権限管理は、マニフェストの 3 番目のバージョンに基づくアドオンにのみ適用されます。マニフェストの 2 番目のバージョンに基づくアドオンの場合、サイトへの詳細なアクセス制御は実行されません。

    Chrome マニフェストのバージョン 2 および 3 に対する Firefox のサポートの計画
  • クロスオリジンリクエストの処理の変更 - 新しいマニフェストに従って、コンテンツ処理スクリプトは、これらのスクリプトが埋め込まれているメインページと同じ権限制限の対象になります (たとえば、ページがlocation API を使用すると、スクリプト アドオンもこのアクセスを受け取りません)。 この変更は Firefox に完全に実装されています。
  • Promise ベースの API。 Firefox は、マニフェストの 3 番目のバージョンに対してこの API をサポートしています。
  • 外部ソースからダウンロードされたコードの実行を防止する サーバー (これは、アドオンが外部コードを読み込んで実行する状況を指します。)Firefoxは外部コードブロッキングを使用しており、Mozillaの開発者はコードのダウンロードを追跡するための追加技術を導入しています。コンテンツ処理スクリプトには、別途コンテンツセキュリティポリシー(CSP)が用意されています。

出所: オープンネット.ru

DDoS 保護機能を備えた信頼性の高いサイト用ホスティング、VPS VDS サーバーを購入する 🔥 DDoS攻撃対策付きの信頼性の高いウェブサイトホスティング、VPS/VDSサーバーを購入しましょう | ProHoster