1. このページで行うこと
iframeを埋め込んで、Storage Access API を使った 3rd-party cookies の取得を試す。
Storage Access API とは?
Storage Access API とは、iframe側ドメインのクッキーへのアクセス許可をユーザーに求めることができるAPIである。
2. iframe を埋め込む
iframeのsrcに指定したURL: https://misc.fitallright.com/3rd-party-cookies-test/001/
まずこちらにアクセスして、クッキーを発行させておく。
3. メモ
- 2024年になり、3rd-party cookies が廃止される(送信されなくなる)と、既にWebブラウザに保存されている3rd-party cookies に JavaScriptからもアクセスできなくなるようだ。
- あくまで Storage Access API は、Webブラウザに保存された 3rd-party cookies へのアクセス許可をユーザーに求めるAPIである。事前にその 3rd-party cookies は、1st-party cookies として取得しておく必要がある。CHIPS を使うのも良いだろう。
- ユーザーのアクションをトリガーとした処理内でないと、Storage Access API は動かない。ページ読み込み時には動かない。
- 現時点(2023-12)では、Storage Access API に関係なく、iframe側のJavaScriptで document.cookie にアクセスできる(Samesite=None,Security=Ture,HttpOnly=Trueのクッキーの場合)。
- 2023年の時点でChromeでテストするには、
chrome://flags/#test-third-party-cookie-phaseout
フラグを設定して Chrome を再起動する。すると、3rd-party cookie 廃止後の挙動になる。
4. スクリーンショット
アクセス許可を求めるプロンプト (Chrome)
- 信用して良いドメインか、しっかり確かめる必要がある。
- アドレスバー上に「埋め込みコンテンツを許可しますか?」と表示されているが、この部分に何らかのメッセージが表示されていることは普段ないので、この表示に気が付かない可能性がある。
- 「埋め込みコンテンツの詳細」リンク先
アクセス許可後 (Chrome)
- 「埋め込みコンテンツ」の右側のトグルスイッチをオフにすると、Storage Access API 自体が Permission denied になる。
- 「権限をリセット」できる。