ログインの仕組みーーCookieとセッション
なんとなくふわっと理解(したつもり)になっていたログインの仕組みについてまとめる。
ログインの仕組み
Cookieとセッションの関係
- ログイン機能はCookieとセッションを使って実現する
- ログイン機能はセッションだけでも実現できるが、セッションだけだとブラウザを閉じたときに維持できない
- ブラウザを閉じてもログイン情報を維持するためにCookieを使う
ログイン処理の流れ
- ユーザーが正しいログイン情報(例:メールアドレスとパスワード)を入力したときにセッションを開始する
- セッションにはログイン中のユーザー情報が入っている(例:Session(name -> "山田"))
- セッションを参照することでページを移動してもログイン中のユーザー情報を保持できる
- セッション情報をCookieに保存する
- リクエストに含まれるCookieからセッション情報を取得する
Cookie
- ブラウザに保存されるテキスト情報(キーと値の形式)
- ブラウザを閉じても維持される(有効期限あり)
- ユーザーは確認、削除、編集可能
セッション
- 一連の処理の始まりから終わりまでを表す概念
- ブラウザを閉じるとセッションは終了する
- セッション情報(キーと値形式)はWebサーバーにファイルとして保存される
- ユーザーは確認、削除、編集できない
まだ怪しい部分もありますが、一旦ここまで。