ククログ

株式会社クリアコード > ククログ > Firefoxのアドオン利用の可否に影響する3つの壁

Firefoxのアドオン利用の可否に影響する3つの壁

はじめに

Firefoxのアドオンを個人でインストールする場合、Firefoxのアドオンマネージャを経由するか、Add-onsサイトからインストールすることでしょう。

しかし、そのアドオンが利用できるようになるまでにどのようなプロセスを経るのかについては、あまり意識されることはありません。 一方で法人利用の場合、アドオンを自由にインストールさせたくないということも多いです。そのためアドオン利用の可否を制御したいという需要があります。その場合には上記のプロセスがどのようになっているのかを意識する必要がでてきます。

今回はFirefoxのアドオン利用の可否に影響する3つの壁について紹介します。

インストールの壁

アドオンをインストールする際の最初の壁となるのが、 xpinstall.enabled という設定項目です。 この値が true のときのみアドオンをAdd-onsサイトからインストールすることができます。 アドオンを検索してインストールすることができるのも true のときのみです。

またこの値はアドオンマネージャーの「アドオンを入手」という項目が表示されるか否かにも影響を与えます。true ならば表示され、 false だと表示されなくなります。

xpinstall.enabled=true

アドオンを入手が表示されている状態は上の図のとおりです。

xpinstall.enabled=false

アドオンを入手が表示されていない状態は上の図のとおりです。

ただし、アドオンのファイルを明示的に選択して「ファイルからインストール」することは xpinstall.enabled の値に関わらず、依然として可能です。 法人向けカスタマイズではこれらも無効にすることが多いです。

アドオン認識の壁

アドオンをインストールする際の2つめの壁となるのが、 extensions.enabledScopes という設定項目です。 この値によって、配置したアドオンが認識され、アドオンマネージャの一覧に表示されるか否かが決まります。

Firefoxがアドオンを自動的に認識する配置場所はいくつかあります。

  • %AppData%\Mozilla\Firefox\Profiles\xxxxx\extensions に配置した場合

  • %AppData%\Mozilla\Extensions に配置した場合

  • C:\Program Filex (x86)\Mozilla Firefox\browser\extensions に配置した場合

  • Windowsのレジストリで任意の位置のファイルをアドオンとして登録した場合

  • 一時的なアドオンとして登録した場合

Firefoxは上記のパターンそれぞれに整数値を割り当てており、 extensions.enabledScopes にはそれらを加算した値を設定することになっています。

アドオン自動無効化の壁

配置したアドオンが認識された後、壁となるのが、 extensions.autoDisableScopes という設定項目です。 この値によって、配置したアドオンが自動的に無効化されるか否かが決まります。

この項目は、ユーザーの明示的な指示を介さずに何らかのアドオンがインストールされたことをFirefoxが検出した際に、当該アドオンを本当に有効化してよいかどうかユーザーに確認を求める、という機能の挙動を制御します。意図せずマルウェアなどの悪意あるソフトウェアが配置されてしまっても、この設定が適切であれば無効化できる可能性があります。

extensions.enabledScopes 同様に値を設定することで、自動的に無効化する対象を制御します。

注意すべきは、「ユーザーの明示的な指示を介さずにインストールされた」アドオンが対象となることです。ユーザーが明示的にインストールしたものについてはこの設定の対象外です。アドオン利用をさせたくない事例では、そもそもインストールさせないというカスタマイズも合わせて必要になります。

まとめ

これまで述べた3つの壁を図示すると次のようになります。

アドオン利用可否の流れ

このように上記の条件をすべて乗り越えたアドオンだけが利用できるようになります。

今回は、普段Firefoxのアドオンを利用していて意識することのない、「Firefoxのアドオン利用の可否に影響する3つの壁」について紹介しました。Firefoxにインストールされるアドオンを管理したい企業内利用では重要なポイントになります。

extensions.enabledScopes および extensions.autoDisableScopes の値による挙動の違いの詳細については、別の機会に記事にしたいと思います。

FirefoxやThunderbirdの導入やカスタマイズでお困りで、自力での解決が難しいという場合には、有償サポート窓口までぜひ一度ご相談下さい。