マニフェスト V2 から V3 に拡張機能を移行する

この記事では、マニフェスト V3 の一部として実装されている重要な変更を示します。これは、Chromium Extensions プラットフォームの次のバージョンです。 拡張機能を Manifest V3 に移行する方法については、「マニフェスト V3 の概要 - Chrome 開発者」を参照してください。

リモートでホストされるコード

現在、拡張機能コードの一部はリモートでホストされており、検証プロセス中に拡張機能パッケージの一部として含まれていません。 これにより、拡張機能をストアに再送信せずにコードを柔軟に変更することができますが、インストール後にコードを利用できます。 Microsoft Edge アドオンが検証済みの拡張機能を確実に一覧表示するために、Microsoft Edge 拡張機能チームは、リモートでホストされたコードを使用する拡張機能を禁止します。 この変更により、拡張機能のセキュリティが強化されます。

開発者は、検証のために、拡張機能で使用されるすべてのコードをパッケージ化して送信する必要があります。 または、サンドボックス環境で 関数を使用eval()することもできます。

実行時ホストのアクセス許可

インストール時に、拡張機能がすべてのサイトとコンテンツにアクセスするための一括アクセス許可を要求できます。 これらのアクセス許可により、拡張機能は最小限の介入で動作できるため、ユーザーのプライバシーとセキュリティのリスクが発生します。 透明性を向上させるために、Microsoft Edge 拡張機能チームは、ユーザーが実行時に Web サイトへのアクセスを許可または制限できるようにするコントロールを提供します。

コンテンツ スクリプトでのクロスオリジン要求

現在、コンテンツ スクリプトは、Web サイトで許可されていない配信元を含め、すべての配信元へのアクセスを要求できます。 この動作は、クロスオリジンの原則を破ります。 今後、Microsoft Edge 拡張機能チームは、コンテンツ スクリプトにスクリプトが挿入される Web ページと同じアクセス許可を持つ必要があります。 この要件により、潜在的なセキュリティの抜け穴が閉じられます。

クロスオリジン要求を実行するには、バックグラウンド スクリプトを使用して、応答をコンテンツ スクリプトに中継する必要があります。 これらの変更は使用可能であり、フラグの背後にあります。 詳細については、「 Chrome 拡張機能コンテンツ スクリプトでのクロスオリジン要求の変更」を参照してください。

Web 要求 API

Microsoft Edge 拡張機能チームは 、Web Request API宣言型 Net Request API に置き換えますが、引き続き Web Request API の監視機能を維持します。 Web Request API ではなく、宣言型 Net Request (DNR) API のみを使用することをお勧めします。ただし、Web 要求 API の監視機能が拡張機能で必要な特定のシナリオを除きます。

この変更は、機能豊富な宣言型機能を使用する拡張機能にプラスの影響を与えます。 宣言型 Net Request API に移行する拡張機能が増えるにつれて、この変更によりユーザーのプライバシーが向上し、拡張機能の使用に対する信頼が向上します。

企業は、エンタープライズ ポリシーを通じて管理される拡張機能に対して、Web Request API のブロック動作を引き続き使用できます。 拡張機能ポリシーの詳細については、「Microsoft Edge の 拡張機能- ポリシー」を参照してください。

バックグラウンド サービス ワーカー

サービス ワーカーは、Microsoft Edge の Canary プレビュー チャネルでテストできます。 拡張機能をバックグラウンド ページからサービス ワーカーに移行するには、「バックグラウンド ページ から Service Worker への移行」を参照してください。 Microsoft Edge 拡張機能チームは、この変更が開発者とユーザーの両方に与える影響を評価し、調査しています。

これらの変更を Microsoft Edge で使用できる場合

現在の宣言型 Net Request API 実装は、Microsoft Edge Stable および Beta チャネルで使用できます。 変更をテストし、フィードバックを提供してください。

Microsoft Edge 拡張機能チームは、ブログで更新プログラムを公開しています。 Microsoft Tech Communityを通じて変更に関するフィードバックを提供できます。「マニフェスト V3 の変更が Microsoft Edge で利用できるようになりました」を参照してください。