Cloudflare Turnstileは、操作しているのが人間か自動プログラム(bot)かを判定する外部サービスです。有効にすると、botによる不正なユーザー登録や、ログインの連続失敗などへの対策になります。
Cloudflareの無料プランで利用できます。設定には、Cloudflareのアカウント作成と、Cloudflareで発行される「サイトキー」「シークレットキー」のWisdomBaseへの登録が必要です。
以下の順に設定します。
目次
- [1] サイトのドメイン名を確認する
- [2] Cloudflareのアカウントを作成する
- [3] Cloudflareでウィジェットを作成する
- [4] WisdomBaseにキーを登録する
- [5] 動作を確認する
- Turnstileで判定が行われる画面
[1] サイトのドメイン名を確認する
受講者がWisdomBaseを開くときのURLから、ドメイン名を確認します。ドメイン名は、URLの「https://」と次の「/」の間の部分です。
- URLが「https://sample.share-wis.com/」の場合:sample.share-wis.com
- 独自ドメインを使用している場合:独自ドメイン(例:elearning.sample.co.jp)
独自ドメインと「〇〇.share-wis.com」の両方のURLでアクセスできる場合は、両方のドメイン名を控えておきます。[3]で登録していないドメインからアクセスすると、Turnstileの判定に失敗し、ユーザー登録などができなくなります。
[2] Cloudflareのアカウントを作成する
すでにCloudflareのアカウントをお持ちの場合は、[3]に進みます。
-
Cloudflareのアカウント作成ページを開きます。
英語で表示される場合は、画面右上の言語メニューで日本語を選択します。 - 「メール」と「パスワード」を入力します。
パスワードは、8文字以上で、数字と記号(例:$、!、@)をそれぞれ1文字以上含めます。 - 「私はロボットではありません」の確認が完了したら、サインアップをクリックします。
- Cloudflareから届く確認メールを開き、メールアドレスの確認を完了します。
Googleなどのアカウントで登録する場合は、Google で続行などをクリックします。
Cloudflareの管理画面が英語で表示される場合は、Cloudflareのプロフィール設定を開き、「Language」で日本語を選択すると、日本語で表示されます。
メールアドレスは、WisdomBaseの管理者アカウントと同じである必要はありません。社内でアカウントを引き継げるよう、共有のメールアドレスの使用をおすすめします。
アカウント作成後、Cloudflareから「ドメインの追加」や有料プランの案内が表示される場合がありますが、Turnstileの利用には不要です。ドメインの追加やネームサーバーの変更は行わず、[3]に進んでください。
[3] Cloudflareでウィジェットを作成する
- Cloudflareにログインした状態で、CloudflareのTurnstile管理ページを開きます。
左メニューから開く場合は、保護と接続 > アプリケーション セキュリティ > Turnstile を開きます。 -
ウィジェットを手動で追加をクリックします。
「Spin でセットアップ」は使用しません。 - 「ウィジェット名」に、任意の名前(例:WisdomBase用)を入力します。
- 「ホスト名管理」の入力欄に、[1]で確認したドメイン名(例:sample.share-wis.com)を入力します。
- 入力欄の下に表示される「sample.share-wis.com」をカスタムホスト名として追加をクリックします。
「ホスト名」の下にドメイン名が表示されれば、追加は完了です。 - 「ウィジェット モード」は「管理(推奨)」のまま、「検証済み訪問者の今後のセキュリティルールチャレンジをスキップする」はチェックを入れないままにします。
-
作成をクリックします。
右側の「ウィジェットを自分で統合する」に、「サイトキー」と「シークレットキー」が表示されます。 - 「サイトキー」「シークレットキー」をそれぞれクリックしてコピーし、控えます。
作成後の画面の左側に表示されるSpin でセットアップはクリックしないでください。WisdomBaseでは使用しません。
ドメイン名を入力しただけでは、ホスト名は追加されません。必ず「〇〇をカスタムホスト名として追加」をクリックし、「ホスト名」の下にドメイン名が表示されたことを確認してから、作成をクリックしてください。
キーは、後から再表示できます。Turnstileの管理ページで、作成したウィジェットの右端の「…」> ウィジェットを編集 をクリックすると、「ウィジェットキー」にサイトキーとシークレットキーが表示されます。シークレットキーは、表示をクリックすると確認できます。ホスト名の追加・削除も同じ画面で行い、更新をクリックして保存します。
「ウィジェットを編集」のシークレットキーのローテーションをクリックすると、シークレットキーが変わります。変更した場合は、WisdomBaseのシークレットキーも新しいキーに更新してください。
ホスト名には「https://」や「/」以降を含めず、ドメイン名だけを入力します。「share-wis.com」だけを登録せず、「sample.share-wis.com」のように完全な形で登録してください。複数のドメインでアクセスできる場合は、すべてのドメイン名を追加します。無料プランでは、1つのウィジェットに10件までホスト名を登録できます。
シークレットキーは、第三者に知られないよう管理してください。
[4] WisdomBaseにキーを登録する
- WisdomBase管理画面 > セキュリティ > セキュリティ設定 を開きます。
- 「Cloudflare Turnstile によるスパム対策を有効にする」にチェックを入れます。
「サイトキー」「シークレットキー」の入力欄が表示されます。 - [3]で控えたサイトキーとシークレットキーを、それぞれの欄に貼り付けます。
-
保存をクリックします。
「セキュリティ設定」がメニューに表示されない場合は、管理者の権限設定をご確認いただくか、サポートまでお問い合わせください。
保存時に、キーが正しいかどうかは確認されません(空欄の場合のみエラーになります)。キーの貼り付け間違いや、ホスト名の登録漏れがあると、ユーザー登録などができなくなります。保存後は必ず[5]の動作確認を行ってください。
[5] 動作を確認する
ログインしていない状態で、パスワード再設定ページを使って確認します。この確認ではメールは送信されません。
- ウェブブラウザーのシークレットウィンドウ(プライベートウィンドウ)を開きます。
- 「https://([1]で確認したドメイン名)/users/password/new」を開きます。
例:https://sample.share-wis.com/users/password/new - メールアドレスの入力欄の下に、Turnstileの認証ウィジェットが表示され、「成功しました!」と表示されることを確認します。
- WisdomBaseに登録されていないメールアドレス(例:sample1@sample.com)を入力し、メールを送信をクリックします。
- ページ上部に「登録されていないメールアドレスです。」と表示されれば、設定は完了です。
Turnstileのウィジェットは、チェックボックスが表示されず、自動で確認が完了する場合があります。
IPアドレス制限を設定している場合は、アクセスが許可されたネットワークから確認してください。
うまくいかない場合は、以下を確認します。
- 手順3でウィジェットにエラーが表示される:[3]のホスト名に、開いているURLのドメイン名が登録されているか、サイトキーが正しいか
- 手順4でメッセージが表示されずトップページに戻る:シークレットキーが正しいか、別のウィジェットのキーを貼り付けていないか
すぐに原因がわからない場合は、「Cloudflare Turnstile によるスパム対策を有効にする」のチェックを外して保存をクリックすると、スパム対策が無効になります。入力したキーは保存されたままです。
Turnstileで判定が行われる画面
有効にすると、以下の画面でTurnstileによる判定が行われます。
- 新規登録ページ
- パスワード再設定ページ
- メンバーシップの入会ページ(ログインしているユーザーも対象)
- ログインしていない状態でのコース・チケットの購入確認ページ
- ログインページ(同じウェブブラウザーで、続けて5回ログインに失敗した場合のみ)
通常のログインでは、Turnstileは表示されません。同じウェブブラウザーで続けて5回ログインに失敗すると表示されます。最後の失敗から一定時間(約5分)が経過するか、ログインに成功すると、失敗回数はリセットされます。
判定に失敗すると、エラーメッセージは表示されず、元の画面に戻ります(新規登録・パスワード再設定・メンバーシップの入会・ログインではトップページ、コース・チケットの購入では購入確認ページ)。ユーザーから「登録ボタンを押してもトップページに戻ってしまう」といったお問い合わせがあった場合は、[5]の動作確認を行ってください。