Bug 171202 - Content blocker `load-type=third-party` is applied to subdomain requests
Summary: Content blocker `load-type=third-party` is applied to subdomain requests
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit Misc. (show other bugs)
Version: Safari 10
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2017-04-23 14:06 PDT by Andrey Meshkov
Modified: 2024-03-11 17:16 PDT (History)
6 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrey Meshkov 2017-04-23 14:06:44 PDT
Request to `subdomain.example.org` sent from `example.org` is considered third party.

All the ad blockers out there use another definition of `third-party`, requests to subdomains are considered first-party.
Comment 1 Maciej Stachowiak 2020-02-19 02:28:51 PST
We should probably use a definition of third-party that is in terms of in terms of "site" rather than "origin", as in the definitions of "first party" and "third party" in the WebKit Tracking Prevention policy:

https://webkit.org/tracking-prevention-policy/

While this does not match the same-origin policy sense, it does match cookies and the way our http cache partitioning works.
Comment 2 Radar WebKit Bug Importer 2020-02-19 02:30:37 PST
<rdar://problem/59584586>
Comment 3 Andrey Meshkov 2020-02-19 03:39:50 PST
Yeah, the first-party definition you use in ITP makes perfect sense.
Comment 4 Maciej Stachowiak 2020-02-19 22:07:55 PST
This might be a compatibility break, so I wonder if we need to add a new version of third-party with a different name. ('third-party-site' maybe? and legacy version aliased to third-party-origin?)
Comment 5 Andrey Meshkov 2020-02-20 00:21:24 PST
In my opinion, this change won't cause any troubles. On the contrary, it might fix a few things.

The thing is that most of the content blockers for Safari are actually "converted" from existing filter lists like EasyList, AdGuard filters, etc, and all these filter lists expect the requested behavior of "third-party".