たとえるなら

このサイトのマスコット、帽子をかぶった青い小鳥のルートンが旗を振っている

お店が常連客に渡す会員カードのようなものです。次に来店したときにカードを見せれば、お店は「前回までの注文はこちらですね」とすぐ思い出してくれます。カード自体はあなたの財布(ブラウザ)に入っています。

ブラウザ あなたのスマホ・PC Webサイト サーバー はじめての訪問・ログイン 会員カード(Cookie)を渡す
受け取った会員カード(Cookie)を次の訪問で見せると、サイトはあなたを思い出せる。

もう少しくわしく

Cookieは、Webサイトがブラウザに保存する小さなデータのメモです。Webの通信はもともと「一回ごとに相手を忘れる」性質があり、そのままでは、ページを移動するたびにログインし直すことになってしまいます。Cookieに「この人はログイン済み」というしるしを残しておくことで、サイトはあなたを覚えていられるのです。

買い物カートの中身が消えないのも、「次回から自動でログイン」できるのも、多くはCookieのおかげです。中身はたいてい意味のわからない文字列で、名前や住所がそのまま書かれているわけではなく、サイト側が「この文字列の人」と見分けるための番号が入っているだけのことが多いです。一方でCookieは、あなたの行動を横断的に記録する用途にも使えます。自分が見ているサイトが発行するものと、広告や分析のために別の会社が発行するものは、区別して扱われます。

混同されやすいのがキャッシュとセッションです。キャッシュは表示を速くするために画像やファイルの控えを手元に残す仕組みで、覚えているのは「あなたが誰か」ではなく「中身」です。セッションはログインからログアウトまでの一続きのやりとりを指し、その本人確認の合言葉をCookieに入れて持ち歩く、という関係になります。

現場でCookieが話題になるのは、主に3つの場面です。ログイン状態をどう保つかを決める設計のとき、不具合の切り分けでCookieを消して試すとき、そして「Cookieの利用に同意しますか?」の確認画面をどう出すかを決めるときです。同意画面の文言やどのCookieを必須とするかは法律や社内の方針にかかわるため、エンジニアだけで決めないのがふつうです。

落とし穴の代表は、Cookieを消したせいでログインし直しになることです。調査のために消すよう頼まれたときは、パスワードがわかる状態で行ってください。ほかにも、閉じるとCookieが消えるシークレットモードを使っていて「毎回ログアウトされる」と誤解する、ブラウザや拡張機能の設定でCookieを拒否していて特定の機能だけ動かない、という事例もよくあります。

不具合を伝えるときに役立つのは、シークレットモードでも同じ症状が出るかを確かめることです。出なければ手元に残った古いCookieが原因、出れば仕組みそのものの問題、と切り分けが一歩進みます。「Cookieを消したら直りました」という一言も、原因をしぼるうえで立派な情報になります。消す前の画面を写真に残しておけば、さらに親切です。

補足すると、Cookieには有効期限があります。ブラウザを閉じると消えるものと、期限が来るまで残るものがあり、「しばらく開かなかったらログアウトされていた」のはこの期限切れです。近年はプライバシーへの配慮から、複数のサイトをまたいで同じ人を追いかけるCookieの扱いが厳しくなる流れにあります。どこまで制限されるかはブラウザや地域によって違います。

現場での使われ方

「一度ログアウトして、Cookieを削除してから試してもらえますか」

ブラウザに残った古いメモが不具合の原因かもしれないので、まっさらな状態で症状が出るかを確認したい、というトラブル調査の定番手順です。消すとログインし直しになります。

「その情報はCookieに持たせず、サーバー側で持ちましょう」

手元に置くと他人に見られたり書き換えられたりする恐れがあるため、大事なデータは提供側で管理しようという設計上の判断です。金額や権限にかかわる情報でよく出る話です。

「同意バナーの文言、法務にも確認してください」

Cookieの利用に同意を求める画面は、見た目の話だけでなく法律やルールにかかわります。エンジニアの判断だけで決めず、社内の担当部署と確認するのが一般的です。

「Cookieが無効になっていると、ログインできません」

ブラウザの設定や拡張機能でCookieを拒否していると、ログイン状態を保てず動かない機能があります。「自分だけ使えない」ときに疑うポイントのひとつです。

よくある質問

Cookieを許可しないとどうなりますか?

ログイン状態の維持やカート機能など、一部の便利機能が働かなくなることがあります。ただし広告や分析のためのCookieだけを拒否できるサイトも多く、その場合は通常の閲覧にほとんど影響はありません。迷ったら、必須以外は断っておけば十分です。断ったあとで不便を感じたら、設定から許可し直せます。

Cookieとキャッシュの違いは何ですか?

Cookieは「あなたが誰か」を覚えておくためのメモ、キャッシュは表示を速くするために画像やファイルの控えを残しておく仕組みです。Cookieを消すとログアウトされ、キャッシュを消すと読み込みが少し遅くなるだけ、という違いで覚えると実用的です。

Cookieを消すとパスワードも消えますか?

Cookieそのものにはパスワードは入っていませんが、消すとログイン状態が切れるため、次回は入力し直すことになります。ブラウザが記憶しているパスワードは別の場所に保存されているので、そのまま残るのがふつうです。念のため、わかる状態で消してください。

Cookieは危険なものですか?

Cookie自体は仕組みであって、危険なものではありません。ログイン状態を保つなど、なくては困る役割を担っています。注意すべきなのは、複数のサイトをまたいで行動を記録する使い方がある点で、だからこそ同意の確認や拒否の選択肢が用意されるようになりました。

「Cookieの同意」を求める画面はなぜ出るのですか?

プライバシーに関する法律やルールの整備が世界的に進み、行動の記録に使うCookieについては、利用者に説明して選んでもらう必要が出てきたためです。必要な項目や表示の形は地域や業種で違うので、自社サイトで出す内容は法務や担当部署と決めます。「とりあえず全部同意」ではなく、必要な範囲を選べる作りが求められています。

関連用語

関連する記事

エンジニア職種図鑑

この言葉を使って働く人たちの仕事を、7つの職種で

ITの学び方ガイド

もっと知りたくなったら。教材の選び方を3ステップで