2015年5月17日日曜日

『サードパーティークッキーの扱い』について

サードパーティークッキーといきなり言われても分からない人もいると、思いますので、順を追って説明していきます。

【クッキーとは】
 初めてアクセスした Web サイトからコンピューターのハード ディスク ドライブ上に配布される小さいファイルです。
 cookie により、ユーザーの環境設定とユーザー名を保存し、Webサイトをカスタマイズすることが可能になります。

【サードパーティークッキーとは】
ドメインが異なるページから発行されたクッキーのことを言います。
表示しているWebページの中に、別のサーバーからクッキーを発行させる命令が記載して、発行させます。

【サードパーティークッキーにおける問題】
このサードパーティークッキーについて、IEとSafariについてはデフォルトで受け入れを拒否しています。
従って、クッキーを使用するサイトでは、IEとsafariで表示できなくなってしまいます。 
例えば、 socket.ioを使った通信では、接続先とWEBサイト配置場所が異なると、IEとsafariで表示できない現象が発生します。


【対応策】

下記URLに記載してありますような対策が有効となります。
(1) IE
開発者側で対応いたします。
ただし、IE9については、対応できません。

環境変数より閲覧ブラウザを判定し、IEであればheaderでポリシー宣言する。
if (ereg('MSIE', getenv('HTTP_USER_AGENT'))) {
    header('P3P:CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"');
}


(2) Safari
 ユーザ側(ブラウザでサイトを見る人)が、

ブラウザの環境設定で、cookie受け入れポリシーを常にに変更する
※ただしセキュリティ上問題とされる可能性がありますので注意してください①メニューバーのSafariから環境設定を開く
②プライバシータブを開く
③Cookieをブロックの項目でしないを選択する


(3) その他
 モジュールの配置場所とセッション、API先を同一ドメインにして、クロスドメインを使わなくします

【参考URL】
http://nemousucom.hatenablog.com/entry/2012/12/16/235506

0 件のコメント:

コメントを投稿