クッキー と セッション クッキーの違い

Webサーバ Webクライアントの通信における、クッキー方式セッションクッキー方式の違いを説明します。Webアプリケーションは原則はセッションレス(通信するたびに接続を切断)なため、通信にはセッションが必要です。このセッションを記憶するための方式である、クッキーとセッションクッキーの違いに関して説明します。

(注意)セッション管理としてその他「hiddenフィールドにセッションIDを入れる」「URLのパラメータにセッションIDを入れる」などがありますが、セキュリティ上大きな問題があるため、このページでは割愛します。


スポンサード リンク

概要 データの保存場所 クッキーの保存場所 欠点
クッキー方式 ・データ(ユーザID等)をクライアント側に保管。このデータを送受信する。 'クライアント側 クライアント側ファイル ・cookie個人情報そのものを送受信するアプリケーションもあり。その場合は盗聴などの被害の可能性があり。
・cookieファイルを盗まれるとセッションがハイジャックされる。
・設定によってはブラウザを終了しても情報が残存する場合あり。
・「クロスサイト リクエスト フォージェリ」の攻撃の原因となりうる。
セッションクッキー方式 ・クッキー方式の弱点を補う。
・データはサーバ側に保管。クライアント側とはセッションIDを送信。
・ブラウザ終了時あるいはログアウト時にセッションIDが消滅。(有効期限は0に設定されている)
サーバ側(*1) クライアント側メモリ ・セッションIDを盗難されるとセッションがハイジャックされる。よって別途HTTPS通信など必須。
・セッションIDの生成規則を予測されるとなりすましが可能。(例:年月日時刻など単純なIDは危険。十分大きな乱数を生成、ハッシュを使用などが重要)

(*1)クライアント側はセッションIDのみ保管

スポンサード リンク

[情報処理技術者試験 | 練習問題 へ戻る]