--- title: トラッキング防止 slug: Mozilla/Firefox/Privacy/Tracking_Protection translation_of: Mozilla/Firefox/Privacy/Tracking_Protection ---

トラッキング防止機能とは何か?

バージョン 42 以降、デスクトップ版 Firefox および Android 版 Firefox には、組み込みの機能としてトラッキング防止が含まれます。プライベートウィンドウ(Android 版 Firefox ではプライベートタブ)では、サイトをまたいでユーザーを追跡するようなドメインからロードされるコンテンツは Firefox によってブロックされます。

ブロックされたコンテンツがページレイアウトの一部である場合、どの部分が Firefox によってブロックされたレイアウト要素であるのかはユーザーにも分かるでしょう。ただし、ページグリッドが要素のブロックによってできた穴を塞ぐように配置されることで、ユーザーに全く気付かれないこともあります。

Firefox によってコンテンツがブロックされると、ウェブコンソールに次のようなメッセージとして記録されます。

トラッキング防止機能が有効なため、 "http://some/url" のリソースがブロックされました。

Android 版 Firefox の場合、コンソールへの出力はリモートデバッガからアクセスできる点に注意してください。

Firefox UI は、コンテンツがいつブロックされたのか、そして、選択すれば現在のセッションにおいてブロック解除を有効にできるということを示します。また、ユーザーはトラッキング防止機能を完全に無効にすることもできます。

Firefox はどのようにブロックする対象を選ぶのか?

コンテンツはそれがロードされるドメインに基づいてブロックされます。

Firefox は、サイトをまたぐユーザーの追跡を行うサイトをリストにします。トラッキング防止機能が有効な場合、Firefoxは、このリストにあるサイトからのコンテンツをブロックします。

ユーザーの追跡を行うサイトとしては、広告サイトや分析サイトが一般的です。

このことがあなたのサイトにとって意味するものは?

トラッキング防止が有効であれば、次のことが言えます。

もしあなたのサイトの別の部分が、ロードされる追跡を行うコンテンツに依存していた場合、トラッキング防止が有効になっているとこれらの部分も同様に正しく表示されなくなるかもしれません。例えば、追跡を行うサイトからコンテンツがロードされた時に実行されるようなコールバックがあなたのサイトに含まれたいた場合、このコールバックが実行されることはありません。

例えば、Google Analytics はこのような使い方をすべきではありません:

<a href="http://www.example.com" onclick="trackLink('http://www.example.com', event);">Visit example.com</a>
<script>
function trackLink(url,event) {
    event.preventDefault();
    ga('send', 'event', 'outbound', 'click', url, {
     'transport': 'beacon',
     'hitCallback': function() {
       document.location = url;
     }
   });
}
</script>

その代わり、Google Analytics を使わない場合も考慮して、次のように ga オブジェクトが初期化されているか確認してください:

<a href="http://www.example.com" onclick="trackLink('http://www.example.com', event);">Visit example.com</a>
<script>
function trackLink(url,event) {
    event.preventDefault();
    if (window.ga && ga.loaded) {
         ga('send', 'event', 'outbound', 'click', url, {
         'transport': 'beacon',
         'hitCallback': function() { document.location = url; }
       });
    } else {
        document.location = url;
    }
}
</script>

この手法についてより詳しくは Google Analytics, Privacy, and Event Tracking をご覧ください。

他のサイトからのコンテンツに依存してしまうやり方は、そのサイトが重かったり、読み込みに失敗したり、アドオンによってトラッキングがブロックされた場合にあなたのサイトまで影響を受けてしまうので良い方法とは言えません。