14-1 人か機械か(Turnstile とは)
店の入口に立つ係の中には、お客さんに話しかけずに見分ける人がいます。歩き方や持ち物を見て、様子のおかしい相手だけを止めます。止められなかったお客さんは、係がいたことにも気づきません。
第 12 章の検問や第 13 章の整理券は、通信の見た目や回数で決めていました。申込書に文字を書き込む場面では、そこにいるのが人かどうかを知りたくなります。
いま読んでいるこのサイト(Cloudflare Lab)にも、問い合わせのような書き込みの入口をいずれ置きます。そこへ機械が大量に書き込むのを、お客さんの手間を増やさずに防ぎたい。これがこの章の出発点です。
Learning goals
この節でできるようになること
- Turnstile が何をする仕組みかを日常語で説明できる
- CAPTCHA と何が違うかを公式の説明で言える
- widget・token・siteverify の三段の流れを言える
- Free plan で使える範囲を数字で言える
1. パズルを解かせない見分け方
Section titled “1. パズルを解かせない見分け方”入口の係が「あなたは人ですか」と全員に尋ねていたら、本物のお客さんほど面倒に感じます。良い係は、尋ねずに見て決めます。
Cloudflare では、この係を Turnstile と呼びます。公式は、Turnstile を Cloudflare の賢い CAPTCHA の代替だと説明しています。どのウェブサイトにも埋め込むことができ、通信を Cloudflare に通さなくても働き、訪問者に CAPTCHA を見せずに動きます。
見分け方の中身も公式にあります。Turnstile はまず、小さな非対話の JavaScript の課題を走らせ、訪問者やブラウザの環境の手がかりを集めます。集めた手がかりで難易度を調整するので、目に見えるパズルを出さずに済みます。
係は本物のお客さんを止めず、様子のおかしい相手だけを止めています。
つまり、Turnstile は「尋ねずに見分ける係」です。
2. CAPTCHA との違い
Section titled “2. CAPTCHA との違い”昔の店では、ゆがんだ文字の紙を渡して「読んで書き写してください」と頼んでいました。人には面倒で、機械には読めてしまうこともあります。
公式は、Cloudflare が Challenge Platform を通して課題を出しており、それが Turnstile を支える技術でもあると説明しています。Cloudflare の Challenge ページと違い、Turnstile は CDN を使わずに、サイトのどこででも、より邪魔にならない形で課題を走らせられます。
扱う情報の範囲も公式にあります。Turnstile は必要なデータだけを処理し、利用者のやり取りやフォームに入力された内容には触れず、保存も送信もしません。
上は紙を渡して解かせるやり方、下は何も渡さないやり方です。
つまり、CAPTCHA との一番の違いは「お客さんに解かせないこと」です。
3. 三段で一組
Section titled “3. 三段で一組”係が「この人は大丈夫」と判断しただけでは、事務所には伝わりません。係は大丈夫だと判断したお客さんに通行証を渡し、事務所がその通行証を本社に確かめます。
公式は、Turnstile が二つの段で動くと説明しています。まず JavaScript の widget が訪問者のブラウザで課題を走らせて token を作り、次にサーバーがその token を Cloudflare へ送って有効かどうかを確かめます。確かめる先が Siteverify API です。
この三つは 14-2 と 14-3 で順に扱います。ここでは「係を置く」「通行証を受け取る」「本社で確かめる」がそろって一組だ、とだけ覚えておきます。
左から、係が見分け、通行証を渡し、事務所が本社へ問い合わせています。矢印が一本でも切れると成立しません。
つまり、係と通行証と本社の確認の三段がそろって一組です(widget・token・Siteverify API)。
4. いくらかかるか
Section titled “4. いくらかかるか”新しい係を雇うとき、まず気になるのは費用です。
公式の Plans のページは、Turnstile に Free と Enterprise の二つがあると示しています。Free は価格が無料で、置ける widget は 20 個までです。課題の回数(通信量や検証のリクエスト)に上限はなく、widget の種類はすべて使えます。
同じ表に、Free では 1 つの widget につき hostname を 10 件まで登録でき、分析をさかのぼれるのは最大 7 日ぶんだとあります。公式は、Turnstile が他の Cloudflare のサービスなしで単独で使えるとも書いています。
無料の一覧表に、置ける係の数と登録できる店名の数が並んでいます。
つまり、Free plan は無料で、係は 20 人まで置けます。
Cloudflare Lab での使われ方
Section titled “Cloudflare Lab での使われ方”ここで紹介した見分ける係が、いま読んでいる Cloudflare Lab でどう使われるかを見ます。
Cloudflare Lab は現在、読むだけのページの集まりです。書き込みの入口を足す段階で Turnstile を 1 つ置き、Free plan の範囲で運用する予定です。実測は実装後に追記します。
つまずきやすいところ
Section titled “つまずきやすいところ”この節のまとめ
Section titled “この節のまとめ”- Turnstile は、パズルを解かせずに人か機械かを見分ける係です。
- 中身は小さな非対話の課題で、CAPTCHA を見せずに済ませます。
- widget・token・Siteverify API の三段で一組で、Free plan は無料です。
この節で出てきた言葉を、つながりの順に並べると次のようになります。
図のラベル: 書き込みを守りたい / 尋ねずに見分ける係 Turnstile / 小さな非対話の課題 CAPTCHA を見せない / ページに置く係 widget / 受け取る通行証 token / 本社で確かめる Siteverify API / 無料の範囲 Free plan・widget 20 個
次の節では、この係を実際に店先に置く手順を見ます。
この節のチェック
© 2026 osdse