Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ITPと、その他cookie関連のこと / ITP and cookie

327 views

Published on

社内LTで発表した資料です。
Safari の Intelligent Tracking Prevention (ITP) とその周辺のことを紹介しました。
(トラッキングツールだけでなく) ECサイトにも大きく影響しそうなところにフォーカスしています。

Published in: Technology
  • Login to see the comments

  • Be the first to like this

ITPと、その他cookie関連のこと / ITP and cookie

  1. 1. Intelligent Tracking Prevention
 
 
 と、その他 cookie 関連のこと
 @akaaariiiiin
 1

  2. 2. はじめに、取扱範囲 (目次)
 - cookie の一般的な仕様
 
 - Safari ITP の概要と背景をふわっと
 
 - Chrome と Firefox もちょっとだけ
 2

  3. 3. cookie の一般的な仕様
 3

  4. 4. cookie の分類
 - ドメイン
 - 1st party : ブラウザで開いているURLと同じドメイン
 - 3rd party : ブラウザで開いているURLと別のドメイン
 - (サブドメイン違いは同じドメイン扱い) 
 
 - 付与する方法
 - Set-Cookie : ブラウザとサーバでやりとり (HTTP レスポンス)
 - document.cookie : ブラウザ内で付け外し (JavaScript)
 
 4

  5. 5. 5
 .monotaro.com .tracker-example.com tracker-example.com
 monotaro.com
 .monotaro.com <script type="text/javascript" src="//monotaro.com/main.js">
 </script> <script type="text/javascript" src="//tracker-example.com/track.js">
 </script>
 <img 
 src="//monotaro.com/main.py"> <img src="//tracker-example.com/track.py">
 document.cookie Set-Cookie 3rd party 1st party 1st party 実線 : 可
 点線 : 不可
 ブラウザ ブラウザ
 Storage cookie
  6. 6. Safari の ITP
 6

  7. 7. ITP の概要
 - Intelligent Tracking Prevention
 
 - macOS / iOS の Safari の機能
 - クロスドメイントラッキングを阻止するのが目的
 - (主に)トラッカーの (主に) cookie 利用を制限するもの
 
 - 2017年9月に初版リリース
 - 以降半年ごとにバージョンアップ
 7

  8. 8. 8
 .monotaro.com .tracker-example.com tracker-example.com
 monotaro.com
 .monotaro.com <script type="text/javascript" src="//monotaro.com/main.js">
 </script> <script type="text/javascript" src="//tracker-example.com/track.js">
 </script>
 <img 
 src="//monotaro.com/main.py"> <img src="//tracker-example.com/track.py">
 document.cookie Set-Cookie 3rd party 1st party 1st party エンドユーザーの
 身に覚えのない
 ドメインの cookie
 他人がつけたcookie もいじれる
 実線 : 可
 点線 : 不可
 ブラウザ ブラウザ
 Storage cookie
  9. 9. 参考
 - https://webkit.org/blog/category/privacy/
 - https://en.wikipedia.org/wiki/Safari_version_history
 ITP 年表 ※ だいたい・・・リリース日は Wikipedia より・・・
 9
 ITP
 概要
 発表
 リリース
 Safari
 OS
 1.0
 3rd party cookie の有効期限を 1 日に制限 
 2017-06-05
 2017-09-19
 11.0
 TODO
 1.1
 微修正
 2018-05-14
 2018-03-29
 11.1
 TODO
 2.0
 3rd party cookie は即削除 
 2018-06-04
 2018-09-17
 12.0
 TODO
 2.1
 document.cookie の有効期限を 7 日に制限 
 document.cookie -> 1st party
 2019-02-21
 2019-03-25
 12.1
 TODO
 2.2
 特定条件下で
 document.cookie の有効期限を 1 日に制限 
 document.cookie -> 1st party
 2019-04-24
 2019-09-??
 ※推測
 13.0
 iOS 13
 macOS 10.15
 macOS 10.14.5
 macOS 10.13.6

  10. 10. ITP 2.0 まで (〜2019年3月)
 トラッカー判定されたドメインで
 - 3rd party cookie は即削除
 - HTTP referrer もドメインしかとれない
 
 トラッカー判定
 - ブラウザの中にブラックリスト(トラッカーリスト)を持っている 
 - 複数ドメイン(4ドメイン以上だったと思う)で動いているとトラッカー 
 - 複数ドメインのサイトで読み込まれている 
 - 複数ドメインのサイトへリダイレクトしている など 
 - トラッカーにリダイレクトしているとトラッカー 
 10

  11. 11. 11
 .monotaro.com .tracker-example.com tracker-example.com
 monotaro.com
 .monotaro.com <script type="text/javascript" src="//monotaro.com/main.js">
 </script> <script type="text/javascript" src="//tracker-example.com/track.js">
 </script>
 <img 
 src="//monotaro.com/main.py"> <img src="//tracker-example.com/track.py">
 document.cookie Set-Cookie 3rd party 1st party 1st party 実線 : 可
 点線 : 不可
 即削除
 ブラウザ ブラウザ
 Storage cookie
  12. 12. document.cookie の有効期限が 7 日間に制限
 Secure 属性 と HttpOnly 属性があれば無制限だが、
 document.cookie からは読み書きできない
 
 
 
 
 ログインの cookie など、
 セキュリティも考慮すべきものは Set-Cookie を使うべき。という背景
 ITP 2.1 ← イマココ (2019年3月リリース)
 12
 2019/6/25 22:55 に撮ったキャプチャ
  13. 13. 13
 .monotaro.com .tracker-example.com tracker-example.com
 monotaro.com
 .monotaro.com <script type="text/javascript" src="//monotaro.com/main.js">
 </script> <script type="text/javascript" src="//tracker-example.com/track.js">
 </script>
 <img 
 src="//monotaro.com/main.py"> <img src="//tracker-example.com/track.py">
 document.cookie Set-Cookie 3rd party 1st party 1st party 実線 : 可
 破線 : 制限付き可
 点線 : 不可
 有効期限を 7 日に
 ブラウザ ブラウザ
 Storage cookie
  14. 14. ITP 2.2 2019年9月リリース想定
 トラッカー判定されたドメインから
 GETパラメータもしくはURLフラグメント付きで
 遷移してきたLPでは、
 - 1st party cookie も 1 日に制限
 - document.referrer もドメインしかとれない
 
 次のページに遷移すると、上記制限解除
 
 14

  15. 15. ITP 2.2 2019年9月リリース想定
 15
 https://www.google.com/
 https://www.monotaro.com/p/5571/7908/?utm_source=Adwords
 https://www.monotaro.com/g/02605124/
 このページでは document.cookie が 1 日まで、 
 document.referrer もドメインまで 次のページに遷移したので、制限解除 トラッカー判定されたドメイン GETパラメータがついている
  16. 16. 16
 .monotaro.com .tracker-example.com tracker-example.com
 monotaro.com
 .monotaro.com <script type="text/javascript" src="//monotaro.com/main.js">
 </script> <script type="text/javascript" src="//tracker-example.com/track.js">
 </script>
 <img 
 src="//monotaro.com/main.py"> <img src="//tracker-example.com/track.py">
 document.cookie Set-Cookie 3rd party 1st party 1st party 特定条件下で
 有効期限を 1 日に
 条件外では 7 日
 実線 : 可
 破線 : 制限付き可
 点線 : 不可
 ブラウザ ブラウザ
 Storage cookie
  17. 17. ITP 2.2 2019年9月リリース想定
 こんなのも実装中
 - localStorage も 7 or 30 日で消される
 - 条件調査中
 17

  18. 18. Chrome と Firefox
 18

  19. 19. Chrome
 2019-07-30 リリースの Chrome 76 で SameSite の扱い変更
 
 
 
 
 
 
 詳しくは
 - https://web.dev/samesite-cookies-explained/ 
 - Lax と None の違い 
 19
 set cookie 時の指定 
 set される値 (~ 75) 
 set される値 (76 ~) 
 なし
 SameSite=None
 SameSite=Lax
 SameSite=None
 SameSite=None
 SameSite=None
 SameSite=Lax
 SameSite=Lax
 SameSite=Lax
 SameSite=Strict
 SameSite=Strict
 SameSite=Strict

  20. 20. Firefox
 トラッカーの 3rd party cookie 拒否が
 デフォルトになっている (Firefox を新規インストールした人から) 
 Firefox のトラッカー判定は全世界共通のブラックリスト
 
 詳しくは https://blog.mozilla.org/blog/2019/06/04/when-it-comes-to-privacy-default-settings-matter/ 
 20

  21. 21. まとめ
 21

  22. 22. まとめ
 - cookie には 1st party か 3rd party か、
 Set-Cookie か document.cookie か の分類がある
 - プライバシーやセキュリティの観点から
 cookie 等の利用に制限が追加されていっている
 - Safari は特に厳しく、現時点で 3rd party cookie 不可、
 1st party も document.cookie は制限つき
 つまり、できる限り Set-Cookie を使うべき
 - 今後もバージョンアップされていくので要監視
 22

  23. 23. 言い残したこと
 - interaction, partition, purge
 - localStorage, Storage Access API
 - トラッキング手法と広告業界への影響
 - AdClickAttribution class
 - SameSite
 23

  24. 24. 公式リンク集
 - Safari
 - Webkit Blog
 - @johnwilander ITP つくってる人の twitter 
 - Webkit Bugzilla
 - Webkit GitHub
 
 - Chrome
 - Chromiun Blog
 - Chrome release schedule 
 
 - Firefox
 - Firefox release
 24


×