Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

Turnstile

最終更新 Markdown で表示Agent セットアップ

Turnstile は、Cloudflare の CAPTCHA 代替です。ウェブサイトやアプリケーションにウィジェットとして埋め込むと、訪問者のブラウザー背景でクライアントサイドの Challenge が実行されます。

Turnstile が Challenge Page と違う点は、Challenge がリクエストを保留せず、ユーザー体験を中断しないことです。ウィジェットはウェブページに埋め込まれ、HTML の一部だけで動きます。そのため、訪問者はすでに遷移先 URL に到達し、ページを表示した状態で Turnstile ウィジェットに出会います。サイト全体へのアクセスを止めるのではなく、ウィジェットが解けるまで、ログインや登録フォームの送信などの特定操作だけを止めます。

ほとんどの場合、訪問者側で追加の操作は不要です。必要なときだけ、進むためにクリックする簡単なチェックボックスを表示します。

Challenge に合格すると、Turnstile は訪問者へクリアランストークンを発行します。ログイン、登録、そのほかのフォーム送信などの機密操作を完了する前に、Siteverify API でこのトークンを検証する必要があります。

ウィジェットの種類

ウェブサイトやアプリケーションに実装できるウィジェットは 3 種類ありますが、背後の Challenge ロジックは同じです。

  • Managed(推奨): Managed Challenge Page に近い動きです。訪問者のブラウザーから得たシグナルに応じて Challenge を選び、自動化の疑いがあるときだけ操作を求めます。

  • Non-Interactive: ウィジェットは表示されますが、本人確認のために訪問者が操作する必要はありません。

  • Invisible: ウィジェットは訪問者には見えませんが、Challenge は背景で実行されます。

実装

Cloudflare ダッシュボードでウェブサイトやアプリケーション向けのウィジェットを作成すると、sitekey が発行されます。

sitekey は クライアントサイドレンダリング で使い、<div> コンテナのプレースホルダーに指定します。その <div> のコード断片を、サイトのページやフォームでウィジェットを置きたい場所に挿入します。

始める

ウェブサイトやアプリケーションへのウィジェット実装は、Turnstile のドキュメント を参照してください。

役に立ちましたか?