← 用語集一覧へ戻る

Cookie

Cookie
security beginner
Webサイトがユーザーのブラウザに保存する、小さな情報メモのこと。
Cookie (Cookie)

概要(サマリー)

Webサイトがユーザーのブラウザに保存する、小さな情報メモのこと。

たとえば、一度ログインしたサイトに数日後アクセスしてもログイン状態が続いているのは、Cookie にセッションIDなどの「このユーザーを識別する手がかり」が保存されているからである。
また、カートの中身、表示設定、言語設定、アクセス履歴の一部などが保存されることもある。

便利な仕組みである一方、ログイン状態や追跡情報、識別情報などに関わることもあるため、プライバシーやセキュリティの観点でも重要な用語である。

詳細解説

Cookie(クッキー)とは、Webサイトがユーザーのブラウザに保存する小さなデータのことである。
日本語ではそのまま「クッキー」と呼ばれることが多い。
一応お約束として断っておくが、お菓子のクッキーではない。

Webサイトは、基本的にはページを開くたびに新しくアクセスされる。
そのままだと、「この人はさっき来た人と同じ人か」「ログイン済みか」「前回どの設定を選んだか」といった情報を覚えておくのが難しい。
そこで使われるのが Cookie である。

つまり Cookie は、
サイトがブラウザに残しておく小さなメモ
のような仕組みである。

なぜCookieが必要なのか

もし Cookie がなければ、Webサイトはユーザーの状態を毎回ほとんど忘れてしまう。
そのため、

  • ログイン状態を維持する
  • カートの中身を覚える
  • 入力途中の設定を保持する
  • 表示言語やテーマを保存する
  • 同じユーザーをある程度識別する

といったことがやりにくくなる。

たとえばECサイトで商品をカートに入れたのに、ページを移動したら毎回カートが空に戻ってしまったら不便である。
Cookie は、そうした不便を減らすために使われる。

Cookieには何が入るのか

Cookie に入るのは、通常は小さな文字情報である。
たとえば次のようなものが入ることがある。

  • ログイン状態を識別するための情報
  • セッションID
  • カート情報の識別子
  • 言語設定
  • テーマ設定
  • ユーザーの識別用ID
  • アクセス解析用の識別情報

ただし、初心者が注意したいのは、
Cookie そのものに重要な個人情報やパスワードをそのまま入れるべきではない
という点である。
実際には、直接その情報を入れるのではなく、識別用のIDやトークンのようなものを入れる形が多い。

どう使われるのか

Cookie はざっくり次のような流れで使われる。

  1. ユーザーがサイトへアクセスする
  2. サイト側が Cookie をブラウザへ保存する
  3. ユーザーが次に同じサイトへアクセスする
  4. ブラウザがその Cookie を一緒に送る
  5. サイト側がそれを見て、前回の状態を判断する

この仕組みにより、サイトは「この人は前にも来た」「ログイン中の人だ」「前回はダークモードだった」といった状態を扱いやすくなる。

ログイン状態との関係

Cookie で最も有名なのは、ログイン状態の維持である。

たとえば、ログイン後に別ページへ移動してもログインが続いているのは、Cookie にセッションIDなどのログイン状態を識別するための手がかりが保存されているからである。
もしこれがなければ、ページを移動するたびに毎回ログインし直すような不便な仕組みになりやすい。

ただし、ここで覚えておきたいのは、
Cookie には「私はログイン済みです」と判定するための手がかりが保存されることが多い
のであって、仕組み全体はサーバー側のセッション管理などと組み合わさっていることが多い、という点である。

Cookieとセッションの関係

初心者が混同しやすいのが、Cookie とセッションである。

Cookie

ブラウザ側に保存される小さな情報。

セッション

サーバー側で管理される、ユーザーごとの一時的な状態情報。

実際のWebサイトでは、

  • ブラウザ側に Cookie を保存する
  • その Cookie に入った ID を使って
  • サーバー側のセッション情報を探す

という形がよく使われる。

つまり、Cookie とセッションは別物だが、セットで使われることが多い。

Cookieとキャッシュの違い

これもかなり混同しやすい。

Cookie

ユーザーの状態や識別のための小さな情報メモ。

キャッシュ

表示を速くするために、一度読み込んだデータを一時保存する仕組み。

つまり、

  • Cookie = 状態を覚えるためのメモ
  • キャッシュ = 速くするための保存

という違いがある。
どちらもブラウザに関係するが、役割はかなり異なる。

ファーストパーティCookieとサードパーティCookie

少し発展的だが、Cookie では次の2種類の話がよく出ることがある。

ファーストパーティCookie

今見ているサイト自身が保存する Cookie。
ログイン状態や言語設定などでよく使われる。

サードパーティCookie

今見ているサイト以外の外部サービスが関与する Cookie。
広告や横断的なトラッキングで使われることがあり、プライバシーの観点でよく話題になる。

初心者向けには、まず
「自分が見ているサイト自身のCookieか、外部サービスが関係するCookieか」
くらいの理解で十分である。

Cookieのメリット

1. ログイン状態を保ちやすい

毎回ログインし直さなくて済む。

2. 設定を覚えられる

言語、テーマ、表示方法などを保持しやすい。

3. ユーザー体験がよくなる

前回の状態を引き継げるため、使いやすくなる。

4. サイト運営にも役立つ

アクセス解析や機能改善のための参考情報として使われることがある。

Cookieの注意点

便利な一方で、注意点も多い。

1. プライバシーに関わる

行動履歴や識別情報に関わることがあるため、利用目的の説明や同意が重要になることがある。

2. セキュリティ上の配慮が必要

ログイン関連の Cookie が盗まれると、不正利用の原因になることがある。
実務では、Secure、HttpOnly、SameSite などの属性を使って、Cookie を安全に扱うことが多い。

3. 無制限に何でも入れられるわけではない

Cookie は小さなデータ向けであり、大きな情報保存には向かない。

4. ユーザーが削除できる

ブラウザ設定で消されることがあるため、永続的な保管場所ではない。

よくある勘違い

Cookie = キャッシュ?

同じではない。
Cookie は状態や識別のための小さな情報で、キャッシュは表示や処理を速くするための保存である。

Cookieにはパスワードそのものが入っている?

そうとは限らない。
通常は識別用のIDやトークンなどを使うことが多く、重要情報をそのまま保存するのは危険である。

Cookieは危険だから全部悪い?

そうではない。
ログイン維持や設定保存など、Webを便利にするための基本的な仕組みでもある。
問題になるのは、使い方や管理の仕方である。

Cookieがあれば何でも永久に覚えてくれる?

そうではない。
有効期限があることもあるし、ユーザーが削除することもできる。

Cookieはサーバー側に保存される?

基本的にはブラウザ側に保存される。
サーバー側で管理するセッションとは別物である。

より詳しくAIに聞いてみよう

  • Cookieとは何かを、中学生でもわかるように説明してください。
  • Cookieとセッションの違いを、初心者向けに整理してください。
  • Cookieとキャッシュの違いを、具体例つきで教えてください。
  • なぜログイン状態の維持にCookieが使われるのか教えてください。
  • WebアプリでCookieを安全に扱うための基本を初心者向けに説明してください。