プロが教える店舗&オフィスのセキュリティ対策術

現在、Cookieを使ってある情報をクライアント側に保持させる機能を作りたいと考えています。
そこで質問なのですが、例えば、IEでアクセスして"value=1"という情報を保持させました。
その後、Firofoxでアクセスした場合は、IEで保持された"value=1"という情報はなく、再度、振り直しで"value=2"という情報を保持させることになってしまいます。
これをブラウザ間で共有することはできるのでしょうか?
ブラウザに依存することなく、一度振られた情報は不変のものとしたいので。
ブラウザのバージョンや種類、OSにもよるかとは思いますが、OSはWindowsXP、ブラウザはIE7、Firefox3.6で考えて頂いて構いません。
サーバー側はJavaで実装していますが、Cookieの設定・取得は現在はJavaScriptで実装しています。(とほほを参考に)
JavaScriptでは無理だけど、Javaでならできるということであれば、サーバー側での実装に変えることもできます。

以上、ご回答よろしくお願いします。

A 回答 (1件)

クッキーについて少々誤解しているようですね。



クッキーとは、ブラウザに対して発行する物です。クライアントに対してではなく、クライアント側で使用しているブラウザに対して発行しています。

情報が保持されてないのは
クライアント側の「IE」に対してvalue=1と発行し
クライアント側の「FireFox」に対してvalue=2を発行しているからです。


異なるブラウザ間でクッキーを共有させるというのはセキュリティ上の脆弱性があるので、その方法を作ったとして修正されて使えなくなってしまうでしょう。
また、そういう事をするとウイルスと見なされてしまいます。

とすると、サーバーサイドで保持して同一の値をセットすることで同じようなことを実現できますが、セキュリティ上の脆弱性を作らなければこれもまた難しいです。


どうしても実現したいのであれば、ブラウザのクッキーを書き換えるソフト・プラグインを作成しそれをダウンロードして実行してもらうのが良いでしょうね。


セキュリティを考えないのであれば方法はありますが…
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
例えが悪く、誤解を与えてしまったようで申し訳ないです。
Cookieがブラウザに対して発行されることは認識しています。
過去の質問に「ブラウザ間でCookieを共有させない為にはどうすればよいか?」という質問があったので、逆に共有させる方法もあるのかと思い質問させてもらいました。
その質問自体も結構古いものでしたが、現在はやはり共有はできないのですね。
一般向けのサイトなのでプラグイン等のダウンロードまでは考えていません。
別の方法を模索することにします。
ありがとうございました。

お礼日時:2011/06/16 10:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!