Safari 是否将二级域的子域视为第三方?

Does Safari consider subdomains of a 2nd level domain to be 3rd party?

我想在一台主机上设置一个前端,该主机通过另一台主机上的后端进行身份验证。假设域是:

如果用户在 www.example.com 时发出请求,Safari 是否允许 api.example.com 在浏览器中设置 cookie?

答案是否定的:Safari/WebKit 将共享二级域(即 example.com)的站点视为第一方。

我们使用虚拟域(www.example.localdevapi.example.localdev)在本地机器上托管的一些网站上测试了这一点,Safari 将它们视为第 3 方。这意味着我们无法使用我们的客户端站点 (www) 通过我们的后端 (api) 对用户进行身份验证。

然而,在移动到具有实际域(www.example.comapi.example.com)的 Internet 上的暂存实例后,它们被视为第一方,每个人都高兴地回家了。

WebKit 的 tracking protection 描述支持子域策略:

First and third-party. If news.example is shown in the URL bar and it loads a subresource from adtech.example, then news.example is first-party and adtech.example is third-party. Note that different parties have to be different websites. sub.news.example is considered first-party when loaded under news.example because they are considered to be the same site.

但他们似乎也严格遵守他们对网站的描述 “一个包括其所有子域的可注册域”。