読み方 : シーエスアールエフトークン

CSRFトークン【CSRF token】

概要

CSRFトークンとは、外部から送り込まれた不正なリクエストを排除するために用いられる推測困難なランダムな文字列のこと。Webアプリケーションにおいてログイン状態を悪用した不正操作を防ぐ対策として用いられる。
CSRFトークンのイメージ画像

Webサイトの多くは、ログイン状態の維持にCookieを利用している。ブラウザは特定のサイトへ通信する際にそのサイトのCookieを自動的に送信するため、悪意ある第三者が別のサイトから利用者のブラウザを介してリクエストを送った場合、サーバは正規の操作と区別できないことがある。

CSRFトークンはこの「CSRF」(Cross-Site Request Forgery)問題に対処する仕組みである。サーバはフォームを表示する際にランダムな値を生成し、フォームの隠しフィールドなどに埋め込んで利用者へ送る。利用者がフォームを送信するとトークンも同時に送られ、サーバは受け取った値が自身の発行したものと一致するかを検証する。

外部サイトから送り込まれたリクエストはこのトークンを持たないため、サーバはこれを見分けて処理を拒否できる。トークンCookieとは異なりブラウザが自動的に付与しないため、正規の画面を経由しなければ取得できない。一致しない場合やトークンが存在しない場合は、不正なリクエストと判断できる。

トークンは固定せず、利用者ごとまたはセッションごとに発行され、一定時間の経過や送信後に無効化されることが多い。フォームを表示する度に新しい値を発行する実装もある。Webページ上からJavaScriptにより非同期通信を行うシステムではHTTPヘッダトークンを含めて送信する方式も用いられている。

データの登録や更新、削除といった状態変化を伴う操作が不正に行われることを防ぐ仕組みとして用いられ、参照のみのGETリクエストには通常使用しない。多くのWebアプリケーションフレームワークにはCSRFトークンの生成と検証の機能が標準で組み込まれており、開発者が個別に実装しなくとも自動的に処理される場合がある。

(2026.7.9更新)
 
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。