セッション管理
cover
おすすめ
セッションとは
セッションとは、ブラウザとサーバとのやりとりにおいて一連の関連性のある処理の流れのこと。
セッション管理の方法
セッション管理とは、セッションでやりとりされる情報を保持する仕組みのこと。
個々のユーザのデータを個別に管理する機能。
主な用途:ログイン状態の管理
Cookieを利用したセッション管理
問題点
- Cookieが保持できる値の数やサイズには制限がある
- ユーザが閲覧・改変できる
Cookie & セッション変数を利用したセッション管理
サーバは個々のブラウザを識別するために
セッションID
と呼ばれる一意の識別子を生成する。セッション中で保持すべき情報は、セッションIDと紐づけてWebサーバ側で格納される。
格納されるキーと値の形式の情報を
セッション変数
と呼ぶ。動作フロー
- ブラウザはサーバにリクエストを送信する。
- サーバは個々のブラウザを識別するために
セッションID
と呼ばれる一意の識別子を生成し、ブラウザへ送信する。
- ブラウザは以降のセッションでCookieでセッションIDを送信する
- サーバはセッションIDに紐付く情報を参照し、動的なレスポンスを返す。
cookieとセッション変数の比較
Cookie | セッション変数 | |
---|---|---|
情報保存場所 | クライアント(ブラウザ)側 | サーバ側 |
情報保持期間 | 永続保持可能 | セッション終了(ログアウト・ブラウザ終了)時に削除 |
サイズ制限 | 制限あり | 制限なし |
ユーザによる情報参照・改変可否 | ○ | × |