Webサイトで、ページをまたがる情報を保持する方法として、クッキーの利用、セッション変数の利用と二つの方法が挙げられる。
今回はクッキーとセッション変数、それぞれの特性を比較しまとめてみた。
クッキー | セッション変数 | |
配列・オブジェクトの格納 | 文字列に変換する必要がある | 通常の変数のように代入可能 |
サイズの制限 | あり | 無制限 |
利用者による直接参照 | 可能 | 不可能 |
利用者によるデータ改変 | 可能 | 不可能 |
第三者によるデータ改変 | XSSなどの脆弱性がある場合可能 | 不可能 |
別サーバーとの共有 | 同一ドメインであれば可能 | 不可能 |
上記表のとおり、セキュリティに関してはセッション変数の方が強固なものとなっている。
クッキーを使うメリットとしては、情報の寿命を簡単に制御できることが挙げられるが、基本的にはセッション変数の利用が推奨される。
なお、クッキーの主な使用例としては、ログイン画面における「ログイン状態を保持する」機能などがある。