Cloudflare Turnstileとは?
サイトのセキュリティツールとしてCAPTCHAやreCAPTCHAがありますが、それらとはまた違うTurnstileというものがあります。以前、そのリリースのニュース記事を以前見かけて気になっていました。
CAPTCHAやreCAPTCHAと同じように使え、かつ、もっとスマートに人間か否かを判定できるようです。公式サイトはこちら。
ちなみに、turnstileとは回転式の改札のことのようです。遊園地とか、動物園、博物館、あるいは海外の地下鉄の改札などにありますよね。金属のバーなどがあって、それが回転して一人ずつ通るようになっている仕組み。あれです。適当な無料画像が見つからなかったので、画像検索のリンクを置いておきます ⇒ turnstile
プラグイン
WordPressにTurnstileを導入するはプラグインが使えます。いくつかあるようですが、有効インストール数が最も多いSimple Cloudflare Turnstileを試してみます。
このプラグインをインストールして有効化すると設定ページが開きます。
ここで、Cloudflare TurnstileのAPIキーを求められます。
APIキー入手
必要なキーはそこに表示されているリンクを辿って入手できます。直リンクも置いておきます。
ここをアクセスするとCloudflareへのログインが求められます。英語で表示されますが、右上のドロップダウンリストで日本語を選ぶこともできます。
アカウント作成
Cloudflareのアカウントがなければこの場で作ります。
「サインアップ」のリンクをクリックします。
メールアドレスとパスワード(自分で決める)を入れて「サインアップ」ボタンをクリックします。
入力したメールアドレス宛に認証用のメールが届きます。
メール内のリンクをクリックします。これでログインできるはずです。
サイト登録
メニューのTrunstileをクリックします。
「サイトを追加」をクリック。
サイト名は自分の識別用ですので、わかり易い名前を入力します。日本語もOKです。
サイトのドメインを入力します。URLではなく、ドメインです。入力したらその下に表示される「xxxxx (カスタムドメインを追加する)」ボタンをクリックします(これがちょっとわかりにくいですが、これがボタンです)。そうすると、下の図のようにドメインが入るはずです。
ウィジェットモードは「管理対象」を選べば良いと思います。サイトの訪問者がちょっと怪しければ人によるアクションを促すモードだと思います。「非インタラクティブ」だとそうした人へのアクションの促しはなく、チェック中であることを表すバーが出るようです。「不可視」は何も表示されず、完全に裏でやるものだと思います。「管理対象」だけしか私は今のところ試していません。
ウィジェットモードを選択したら「作成」をクリックします。
サイトキーとシークレットキーが表示されます。もしこの画面を閉じてしまったら、サイトの一覧を表示し、「Settings」のリンクをクリックすればサイトキーなどの画面が表示されます。
APIキーの入力
Simple Cloudflare Turnstileプラグインの設定画面に、先程取得したサイトキーとシークレットキーを入力します(コピペでOK)。
どのフォーム(画面)でTrunstileを使うかを選択します。基本は、全部チェックすれば良いと思います。
また、もし、他に対応しているプラグインがインストールされていれば、それらも表示されます。
上は、Contact Form 7がインストールされている場合の例です。一通り選択したら「変更を保存」ボタンを押します。
「API応答テスト→」ボタンを押します。
このように「成功!TurnstileはこれらのAPIキーで正しく動作します。」と表示されれるはずです。
問題があった場合は下の図のように「失敗!API設定にエラーがあります。チェックして更新してください。」と表示されます。おそらく、サイトキーなどの入力にミスがあると思われます。入力し直して再度テストしてください。
動作確認
Cloudflare Turnstileが有効化されると、コメントフォームなどにこのような表示が現れます。
ほとんどの場合は、自動でチェックされ、「成功しました!」となるはずです。
ログインフォームも同様です。
まれに、確認が求められることがあります。
この場合はクリックするだけです。通常はこれで成功するはずです。
しかし、これも稀に失敗することがあります。
この場合は、何もせずとも数秒後に再チェックされ、成功するはずです。
reCAPTCHAと比べると、確認が求められる場合でもチェックするだけけで、指定された画像の選択などはありません。楽です。楽すぎて「本当に大丈夫か?」という気がしないでもないですが…。
統計情報
Cloudflare Turnstileの管理画面で統計情報を確認することもできます。
「発行されたチャレンジ」は、Turnstileが表示された回数でしょう。
「インタラクティブな解決」は訪問者に確認を求めた回数(つまり、手動確認)。「非インタラクティブな解決」は訪問者に確認を求めることなく自動で認証した回数。
ここまではわかるのですが、「未解決」が今ひとつわかりません。自動解決せず、手動確認を求めたが解決できなかった、つまり、ボットを弾いた回数ということでしょうか?ここのところがまだよくわかっていません。
勉強しつつ様子を見ていこうと思います。