[PHP-users 29924] Re: 異なるドメインで発行されたクッキーへのアクセス

高森 みつき zbn33523 @ pine.zero.ad.jp
2006年 8月 2日 (水) 16:26:19 JST


高森です。

もし間違っていたらすみません。
自分なりに考えてみました。

www.html.co.jp(HTML表示)
www.php.co.jp (PHP実行)

A==== www.html.co.jp/sample.htmlの内容 ====
img src="www.php.co.jp/gazou.php"

==== www.php.co.jp/gazou.phpの内容 ====
setcookie ("TestCookie", $value, time()+3600);
Header("Location:check.php");

==== www.php.co.jp/check.phpの内容 ====
$fp = fopen("test.txt", "w");
foreach ($_COOKIE as $key => $value) {
 fwrite($fp, $key . ":" . $value);
}
fclose($fp);


1. まずsample.htmlにリクエストすると
   上記の内容Aが返る

2. imgタグで指定された内容を取得するため
   gazou.phpにリクエスト。クッキーが発行され
   Location:ヘッダが返る

  クッキー発行元:www.php.co.jp

3. check.phpに遷移。クッキーの値が呼び出される
  クッキーチェック元:www.php.co.jp

考察:発行元とチェック元が同じなため、チェックは可能に思われる。

--------------------------------
デフォルト設定でのブラウザの動作
--------------------------------
IE.6    クッキー値は書き込まれない
Forefox クッキー値が書き込まれる

IE6.0のプライバシー設定を中→低(全てのCookieを受け入れる)とすると
値が書き込まれました。

考察:
この点からIE.6とCookieの関係について調べたところ
閲覧しているサイト(sample.html)とは別のところから発行されたクッキーは
サードパーティのクッキーとして区別される。セキュリティ設定「中」のIE.6では
P3Pプライバシーポリシーというのを発行しないと、はじかれてしまう。 




PHP-users メーリングリストの案内