Making Tracking Protection Lists Available From Your Web Site

Any site can offer Tracking Protection Lists (TPLs)
to help consumers protect their privacy. This post shows you how to make a TPL available
from your site. For example, clicking
here in IE9 will add the list from the
EasyPrivacy.

A word about Tracking Protection Lists

Tracking Protection Lists are similar in concept to the lists behind the AdBlockPlus
add-in for Firefox. The main differences are that TPLs are built in to IE, the W3C
is working through the standardization process of their format, and adding a TPL
in IE sends the DNT header (link).

Technically, TPLs are just text files that can be hosted on any Web server and linked
to from any Web page, like an RSS feed for a blog. You can find TPLs at several
different sites, like the
IE gallery site (linked to from the Manage Add-ons dialog within IE), the
EasyList Web site, or on other
sites like this one.

How to link to a Tracking Protection List

Let’s use the EasyPrivacy TPL as our example. The TPL is located on the EasyList
webserver at http://easylist-msie.adblockplus.org/easyprivacy.tpl.
Following that link in any browser will show the contents of that list… useful for
privacy enthusiasts, but not as much for consumers who want to add the list.

Internet Explorer 9 includes a JavaScript API, msAddTrackingProtectionList (link),
to do this:

<a href=”javascript:window.external.msAddTrackingProtectionList(‘http://easylist-msie.adblockplus.org/easyprivacy.tpl’,
‘EasyList Privacy’)”>EasyPrivacy TPL</a>

Clicking on this link results in a user confirmation prompt:

Dialog confirming the addition of a Tracking Protection List

This makes sure that the consumer really wanted the list, and that the site isn’t
installing it without user consent. This is like a pop-up blocker against unwanted
TPLs.

For security reasons, msAddTrackingProtectionList can only be called from places
in your page that are associated with a user interaction – buttons, links, forms,
etc. are all fine. It can’t be called on page load automatically. Another benefit
of using a JavaScript API is that you can easily deploy a TPL from your Web site
without having to change your server configuration; for example, no custom MIME
types are required.

If you’re passionate about privacy, consider adding a link to your favorite TPL
on your own Web site.

—Andy Zeigler, Program Manager, Internet Explorer


IEBlog