0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ITP(Intelligent Tracking Prevention)の仕組みと対策方法

Last updated at Posted at 2025-04-22

1. はじめに

ITPとは何か

  • Safari(ブラウザ)に搭載されているプライバシー保護機能のひとつ。
  • ユーザーのウェブ上でのトラッキングを制限するために設計された。
  • Third-Party Cookie、First-Party Cookieに対する制限や、JavaScriptを通じた追跡手法の排除の対応をしている。

なぜITPが導入されたのか

  • 過剰なターゲティング広告や行動追跡に対するユーザーの懸念があったため
    → Appleはプライバシーは基本的人権であるという理念をもとに、開発・強化を行っている。

2. Cookieの種類と特徴

Cookieとは

  • Webサイトがユーザーのブラウザに保存する小さなデータのこと。
  • ログイン情報の保持、ユーザー設定の記録、行動履歴の保存に使う。

Cookieの基本分類

  • Cookieは以下の2軸で分類される
    • ドメイン関係: First-Party or Third-party
    • 発行元: JavaScritp(Client) or Server

1. First-Party Cookie

  • ユーザー直接アクセスしているドメイン(例: example.com)が発行するCookie。
  • セッション管理や言語設定で使用される。

2. Third-Party Cookie

  • ユーザーがアクセスしているサイトとは異なるドメイン(例: hogo.com)が発行するCookie。
  • 広告配信みゃアクセス解析などのクロスサイトトラッキングに活用される。

3. Client Cookie

  • ブラウザ側(JavaScript)で生成・操作されるCookie。
  • document.cookieを用いて読み書きする。
  • セキュリティ制御が弱く、HttpOnly属性を付けられない点が注意。

4. Server Cookie

  • サーバーからSet-Cookieヘッダを通して発行されるCookie。
  • Set-Cookieヘッダがレスポンスに含まれることでブラウザに保存される。
  • セキュリティ属性(HttpOnly, Secureなど)を細かく設定できる。

3. ITPの仕組み

クロスドメイン制限

  • ITPの本質は**「Third-Partyによるクロスサイト追跡の排除」**
  • ユーザーが明示的に同意していなくても追跡が可能な構造なので、ブロック対象となる。

サブドメインはFarst-Party扱いになる
ITPは、eTLD+1ルールが適用しており、eTLD+1(例: example.com)が一致しているeTLD+2(例: sub.example.com)は同ドメインを扱われる。

有効期限の制限(ITP 2.1以降)

  • JavaScriptで発行されたFirst-Party Cookieの有効期限を最大7日間に制限。

Cookie区分表

ドメイン関係 発行元 主な用途 ITP影響
Farst-Party Client(JS) 状態保持系 7日間制限あり
Farst-Party Server 認証系 制限なし
Third-Party Client(JS) ほぼ使えない 完全にブロックされる
Third-Party Server 昔のトラッキング系 ブロックされる or 即時削除

→ 基本的にはFarst-Party × Serverを使用すれば影響を受けない

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?