ブラウザ拡張機能(英語: browser extension)とは様々な方法でウェブブラウザの機能を拡張するためのコンピュータプログラムである。ブラウザやバージョンによっては、プラグイン(英語: plug-in)もしくはアドオン(英語: add-on)といった同じ意味の用語と使い分けられることがある。一部の拡張機能ではHTMLやJavaScriptといったウェブ技術を活用して開発されている[1]。また、例としてツールバーの追加など、表示できるウェブサイトの内容に直接影響を与えること無くウェブブラウザのユーザーインターフェースを変更することが出来る。 マイクロソフトは1999年にリリースしたInternet Explorer 5より[2]、Mozilla Firefoxはリリース開始となった2004年より、Operaは2009年リリースのバージョン10より、Google Chromeは2010年リリースのバージョン4より、Apple Safariは2010年リリースのバージョン5より拡張機能に対応するようになった。拡張機能の構文はブラウザによって非常に異なっており、少なくともあるブラウザで動作しても他のブラウザで動作しないことがある。検索エンジンツールでは、この問題を回避する試みとしてMycroft 多くのブラウザではユーザーが目的の拡張機能を探したり、人気のある拡張機能の一覧を見ることができるオンラインのストアサイトがある。Google Chrome[4]、Mozilla Firefox[5]、Safari[6]にはそれぞれ自前のストアサイトを持っているものの非公式のストアサイトもある[7][8]。 ブラウザ拡張機能の用途は多岐にわたる。 ブラウザツールバーとはブラウザのウインドウ内に配置されるツールバーで全てのメジャーブラウザで対応しており、ブラウザのGUIや機能を拡張する方法として開発されている。また、ツールバーを提供するブラウザ拡張機能の特定の種類と考えられており[誰によって?]、各ブラウザごとに特化されていて、特定のブラウザで動作しているツールバーは他のブラウザでは動作しないとされている[誰によって?]。 プラグインはアプリケーションプログラミングインタフェース(API)を使ってブラウザに特定の機能を追加する。APIでサードパーティはブラウザとやり取りできるプラグインを開発することが出来る。当初のAPIはNPAPI ほとんどのブラウザにおいて拡張機能を使ってプライベートブラウジングでユーザーのオンラインプライバシーを守ることができ、様々な種類のユーザーブラウジングプライバシーを制御したり脅威から防護することができる多種多様な拡張機能がある。プライバシーに関連する拡張機能のほとんどは第三者によるユーザーへの追跡を防ぐ機能、広告やスクリプトをブロックする機能、良い動作を確実にする受動的なセキュリティツールの3種類に分かれる[9]。 実際のブラウザ拡張機能の開発は特定ブラウザに対応した拡張機能の開発になる。各ブラウザごとに拡張機能の構築に必要な固有のアーキテクチャとAPIがあり、異なるコードや技術が求められるが、開発フレームワークによってそれぞれ1つのみのコードとAPIのみでクロスブラウザ対応拡張機能を構築することが出来るようになりブラウザごとに異なるバージョンの拡張機能を開発する必要はなくなった。これらのフレームワークの例として、Internet Explorer、Firefox、Chrome、Safari、Operaに対応したクロスブラウザの拡張機能を構築できるAdd-ons Framework[10]やInternet Explorer、Firefox、Chrome、Safariに対応したクロスブラウザの拡張機能を構築できるCrossrider開発フレームワークがある[11]。 また、Extension Maker[12]というクロスブラウザ拡張機能開発環境もあり、上記2つのフレームワークとは異なり、コードを記述する必要はなく、既存ブロックから拡張機能を開発することが出来る。 ブラウザ拡張機能はブラウザによって全てにアクセスしたり、ウェブページに広告を挿入したり、第三者のサーバーにバックグラウンドのHTTPリクエストを送ったりすることができるため、ブラウザ拡張機能がそれを悪用する事が可能である。ウェブページはウェブのセキュリティモデル(特に同一生成元ポリシー)で制限されているが、拡張機能では制限されない[要出典]。 結果として、ブラウザ拡張機能の中には説明と異なり、インストールしたユーザーの意図に反した動作をするのがある。実はマルウェアである拡張機能もあり、ユーザーに知識がない場合アンインストールが困難なアドオンであるブラウザ拡張機能をインストールさせる不要バンドルソフトウェア
目次
1 歴史
2 インストール
3 機能
3.1 ツールバー
3.2 プラグイン
3.3 プライバシー
4 開発
5 望まない動作
6 脚注
7 関連項目
8 外部リンク
歴史
インストール
機能
ツールバー
プラグイン「プラグイン」も参照
プライバシー
開発
望まない動作