読み方 : クッキー

Cookie 【クッキー】 HTTP Cookie

概要

Cookie(クッキー)とは、WebサーバWebブラウザに送信する制御情報の一種で、ブラウザが動作しているコンピュータに永続的に記録・保管されるもの。閲覧者の識別などに利用される。

解説 CookieはWebサーバWebブラウザにコンテンツを送信する際に制御情報の一部として一緒に送信する短いデータで、ブラウザは次にサーバリクエストを送る際に前回受け取ったCookieの内容を申告する。ブラウザは受信したCookieを所定の期限までストレージ上で永続的に保管する。

Cookieには任意の文字列が記録でき、利用者の識別や属性に関する情報や、最後にサイトを訪れた日時などを記録しておくことが多い。ネットサービスなどで利用者のIDなどを保存しておけば、次にアクセスしたときに自動的に利用者を識別・同定することができ、前回の続きからサービスを提供することができる。

1つのCookieには4096バイトまでのデータを記録でき、1台のサーバが同じコンピュータに対して発行できるCookieの数は20個に制限されている。Cookieの総数は300個までで、これを超えると古い方から削除される。個々のCookieには有効期限が設定されており、期限を過ぎたものは破棄される。

Cookieの送受信

Cookieの送受信はWebコンテンツの送受信に標準的に用いられるプロトコル通信規約)であるHTTPにより行われる。コンテンツ本体とは異なり、通信や送受信データに関する制御情報を記載する「HTTPヘッダ」と呼ばれる領域に記載されるため、閲覧者が直に目にする機会はほとんどない。

WebサーバからWebブラウザへのCookieの送信はHTTPレスポンスヘッダ中の「Set-Cookieフィールドを利用し、「Set-Cookie: クッキー名1=値1; クッキー名2=値2; …」という形式で複数の属性値の指定を一行に連結して送信する。ブラウザからサーバへは、HTTPリクエストヘッダ中の「Cookie」フィールドを用い、同じ書式で送信する。

Set-CookieフィールドにはPath属性(例:path=/example/;)やDomain属性(例:domain=www.example.com;)を用いてそのCookieを参照・書き換えできる範囲を指定したり、Max-Age属性(例:max-age=3600;)やExpire属性(例:expire=Tue, 19 Jan 2038 03:14:07 UTC;)で有効期限を指定することもできる。

Secure属性を指定するとSSL/TLS暗号化されたHTTPS通信時にしか読み取れないよう制限することができる。通常のCookieはWebページ上で動作するJavaScriptなどから読み書きすることもできるが、HttpOnly属性を指定するとスクリプトによるアクセスを禁止できる。

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

WebページにはHTMLimg要素iframeHTTPなどを用いてページ本体(HTMLファイル)を送信したサーバとは異なる外部のWebサーバからコンテンツを呼び出して埋め込み表示する機能がある。その際、埋め込みコンテンツに付随して外部サーバからCookieが送られてくることがある。

その場合、ページ本体に付随して送られてくるCookieを「ファーストパーティCookie」(first-party Cookie)、埋め込みコンテンツに付随して外部サーバから送られてくるCookieを「サードパーティCookie」(third-party Cookie)という。

サードパーティCookieは「トラッキングCookie」とも呼ばれ、アクセス解析サービスなどにページ閲覧が行われたことを報告・記録するために用いられたり、広告配信サービスでサイトを横断して閲覧者を追跡・同定し、個々人に最適な広告を配信するために利用されることがある。

サードパーティCookieは個人のインターネット上での活動を本人の意志によらず継続的に追跡することができるため、プライバシーの侵害であるとの批判が根強くある。米アップル(Apple)社のWebブラウザSafari」では利用者が明示的に許可しない限り無効となっており、今後はGoogle Chromeなど他のブラウザでもデフォルト設定では無効に切り替えていく予定となっている。

(2023.12.8更新)

他の用語辞典による「Cookie」の解説 (外部サイト)

資格試験などの「Cookie」の出題履歴

▼ ITパスポート試験
令6 問61】 cookieを説明したものはどれか。
令2秋 問81】 Webサイトに関する記述中のa、bに入れる字句の適切な組合せはどれか。Webサイトの提供者が、Webブラウザを介して利用者のPCに一時的にデータを保存させる仕組みを [  a  ] という。
平29秋 問91】 クロスサイトスクリプティングなどの攻撃で、Cookieが漏えいすることによって受ける被害の例はどれか。
平28春 問79】 Webサイトによっては、ブラウザで閲覧したときの情報を、ブラウザを介して閲覧者のPCに保存することがある。以後このWebサイトにアクセスした際は保存された情報を使い、閲覧の利便性を高めることができる。
平26秋 問81】 cookieによって得られる利便性の例として、適切なものはどれか。
平22秋 問59】 クッキー(cookie)に関する記述 a~c のうち、適切なものだけをすべて挙げたものはどれか。a Webサイトを前回閲覧した際に入力したIDやパスワードなどは、別のPCを使用して閲覧する場合でもクッキーで引き継がれるので再入力が要らない。
平22春 問59】 Webで使用されるCookieに関する記述として、適切なものはどれか。