戻る ※過去ログ・転載/引用専門です。

  ■ 正しいクッキーの食べ方 ■


  ■ minibbs等に何度めかに書き込む時,他人の名前が入っている事があるのですが,
    それはプロクシサーバにクッキーが残っているせいだと聞いた事があるのですが
    やはりそうなのでしょうか?

  ■ cookieは自分のマシンに残るんです
    c:\windows\Cookies とか、Windowsのディレクトリ内にデータが書き込まれます。

  ■ サーバに残るの? 自分のマシンに残るの? どちらですか?

  ■ 両方とも正しいです。(笑)串を使った場合、直前にアクセスした同じIPが割り振られた他人と
    間違われてキャッシュを使われる可能性があるのです。
    でも、可能性は凄く低いし、深刻な弊害もないので気にする必要はないです。


  ■ JAVA、クッキーをパクパク食べないと見れないサイトについて。

    JavaScriptのセキュリティについてはよく話題にされますが、VBScriptのセキュリティに関しても
    注意が必要(アクティブX等)。

    CGI, JavaScript, Java, PlugIn, VBScriptの混在したページでは安全かどうかを調べるには労力を必要とします。
    CGIだから全て危険という事はありませんが、初めて訪問するサイトまたは危険と思われる
    サイトには注意を払った方がよいでしょう。

    Cookieファイルは編集してはいけない事になっていますが、1行単位で削除する限りは影響は
    ないでしょう。Cookieファイルに「いや〜ご苦労さん」という気の利いた(?)メッセージで
    入れておくのも一考でしょうf(^^;

   ■Cookieファイルの読み書き方法

    cookieファイルの読み書きには

    document.cookie

    命令を使用します。myData = document.cookie;とすればデータが読み出せますが、
    cookieファイルに記録されている全てのデータが読み出されるわけではありません。
    書き込み時と同じURL(サイト)のデータのみ読み出されます。また、
    この場合1行しか読み込まれません。

    cookieファイルに書き込む形式は以下のようになります。

    document.cookie = 名前+データ+期限(GMT)

    document.cookie = 名前+データ;expires=期限;

    (例:document.cookie = "MZ='721'")

    データはデータそのものでも構いませんが通常は「名前+データ」とします。
    期限はデータの存続可能な有効期限ですが、ローカルタイムではなくGMT(グリニッジ標準時)
    で指定します。データを消したい場合は、現在の日付より以前の日付を指定すればデータは消えます。
    ただし、データが削除されるのはブラウザー終了後ですので注意が必要です。

    期限を指定しない場合はブラウザ終了後まで一時的にデータは記録されています。

    データを読み出す場合は以下のようになります。

    myData = document.cookie

    この場合読み出されるデータには期限は含まれません。もし「name=KF」という
    データが書き込まれている場合、myDataには「name=KF」という「文字列」が入ります。
    文字列でなく数値を読み書きしたい場合には文字列に変更するといった作業が必要になります。
    文字列を検索する場合はindexOf、charAt、substring等の検索命令を利用します。

   ■Cookieファイルとセキュリティ

    JavaScriptとCookieファイルを利用した場合、フォームに入力したデータを保存させておく事
    が可能です。JavaScriptでは現在のURLのデータしか送信する事ができずNetscape 3.0以降では
    送信してもよいかどうかのダイアログが表示されます。他のページで入力されたデータに関しては
    フレームとサブウィンドウを利用することで送信する事が可能です。しかし、
    この場合でもNetscape 3.0以降では送信してもよいかどうかのダイアログが表示されます。

    フレームまたはサブウィンドウおよびCGIとJavaScriptを組み合わせる事によりCookieファイル
    の内容を送信する事が可能です。

    この場合盗まれるデータは訪問先のURLおよびCookieファイルに記述されている内容です。
    セキュリティ対策のために最新版のブラウザを使用しましょう。

    Cookieとは?

    NetscapeやExplorerなどでは基本的にローカルファイル(使用しているマシンのディスク等)に
    情報を書き込むことは出来ません。

    しかし、CGI,JavaScript等を使用することで「cookieファイル」にのみ書き込みを行うことが出来ます。
    cookieファイルは以下の名称になっています。

    機 種     ファイル名
    UNIX      cookies
    Windows    cookies.txt
    Macintosh    MagicCooki

    Cookieファイルの項目は1行単位となっており、項目は空白で区切られています。
    先頭にドメイン名、フラグ、アドレス、フラグ、ID、名前、データとなっています。
    ファイルの1行の先頭にはアクセスしたサイト名等が記録されています。

    Cookieファイルの制限
    cookieファイルは1行単位で処理され、ファイルの最大サイズは4KB (4096文字)、
    エントリーの合計は300、サーバーまたはドメインで最大20となっています。
    この制限を越えた場合使用されていないものから削除されていきます。

    CookieファイルをONにしなければ見れないサイトもあるので、常時OFFにするわけにはいけません。
    しかしCookieをONにしているためにブラウザのセキュリティホールを利用して
    Cookieファイル以外に書き込みや 読み込みも可能です。

    この場合盗まれるデータは訪問先のURLおよびCookieファイルに記述されている内容です。