Skip to content

Commit ed67c46

Browse files
committed
Bug 1870185: improve installer attribution documentation r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D196516
1 parent e016105 commit ed67c46

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

browser/components/attribution/docs/index.rst

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,11 @@ The following information is supported by this system:
2222

2323
Descriptions of each of these can be found in :ref:`the Telemetry Environment documentation <environment>`.
2424

25-
--------------------------
26-
Firefox Windows Installers
27-
--------------------------
25+
---------------------------------------
26+
Firefox Windows Installers & macOS DMGs
27+
---------------------------------------
2828

29-
Installs done with either the stub or full NSIS installer are capable of being attributed. When these installers are created, they are given initial attribution data of *dlsource=mozillaci*. Users who download their installer via www.mozilla.org will typically have this attribution data overwritten (unless they have Do-not-track (DNT) enabled), with *dlsource=mozillaci*, a *dltoken*, and whatever UTM parameters Bedrock deems appropriate.
29+
Installs done through Windows stub or full NSIS installers or macOS DMGs are capable of being attributed. When these packages are created, they are given initial attribution data of *dlsource=mozillaci*. Users who download their package via www.mozilla.org will typically have this attribution data overwritten (unless they have Do-not-track (DNT) enabled), with *dlsource=mozorg*, a *dltoken*, and whatever UTM parameters Bedrock deems appropriate.
3030

3131
An additional complication here is that the attribution system is used (or abused, depending on your view) to support the Return to AMO workflow -- forcing the *campaign* and *content* UTM parameters to specific values.
3232

@@ -106,6 +106,18 @@ The below diagram illustrates the flow of the cases above:
106106
CDN <---->|"Fetches installer"| CDNOrigin
107107
end
108108

109+
~~~~~~~
110+
Windows
111+
~~~~~~~
112+
113+
Windows attribution is implementing by injecting data into the signature block of NSIS installers at download time. This technique is described in the "Cheating Authenticode" section of `this Microsoft blog post <https://learn.microsoft.com/en-ca/archive/blogs/ieinternals/caveats-for-authenticode-code-signing#cheating-authenticode>`_.
114+
115+
~~~~~
116+
macOS
117+
~~~~~
118+
119+
macOS attribution is implemented by adding a ``com.apple.application-instance`` extended attribute to the ``.app`` bundle at download time. This special extended attribute is explicitly *not* part of the digital signature of the ``.app`` bundle as per `this Apple technical note <https://developer.apple.com/library/archive/technotes/tn2206/_index.html#//apple_ref/doc/uid/DTS40007919-CH1-TNTAG401>`_.
120+
109121

110122
---------------
111123
Microsoft Store

0 commit comments

Comments
 (0)