目次
ホームページを公開すると設置したWebフォームに海外などからスパム投稿され迷惑メールが大量に届くことがあります。 reCAPTCHAには、Webフォームに登録する際、「私はロボットではありません」というチェックボックスが表示されるといった機能があります。 このような機能で、Webフォームなどへアクセスを試みるbotによる悪質なアクセスからホームページを防御することができます。 reCAPTCHAはGoogleが提供する認証システムで、現在は [v2],[v3],[Enterprise] が利用できます。
reCAPTCHA v1
歪んだ英数字を入力することで、botを弾くというものでしたが、 画像認識制度が向上したことで、reCAPTCHA v1が突破されるようになりました。 現在、reCAPTCHA v1は提供が終了しています。
reCAPTCHA v2
「私はロボットではありません」と書かれたチェックボックスを表示するのがreCAPTCHA v2です。 botかどうか疑わしいと判断された場合は、画像認証で再チェックが課されます。 基本的には、この画像認証が課されることが多く、画像認証を煩わしく思うユーザーなどのユーザビリティを損なうのがデメリットになります。 2021年7月の段階で、まだ広く使用されているので、見る機会の多いreCAPTCHAだと思います。
reCAPTCHA v3
reCAPTCHA v3は、これまでのバージョンと違い、チェックボックスや画像認証がユーザーに課されることはありません。 ユーザーの環境や動作からスコアを算出し、ロボットの場合は0、人間の場合は1としてその0~1の間で数字を返します。 reCAPTCHA v3を配置したページでユーザーの動きを学習し、利用が増えるとともにスコアの精度は高まっていきます。 例を挙げると、reCAPTCHA v3をメールフォームに設置した場合、[送信]ボタンを押すだけで自動的に人間かbotかの判断が行われます。
reCAPTCHA Enterprize(有料版)
reCAPTCHAを無料で利用できる範囲は、1秒間に1000回。月間100万回までです。それを超えるサイトの場合は、有料で高機能のreCAPTCHA Enterprise(エンタープライズ)に移行する必要があります。
それでは、実際に作成済みのメールフォームにreCAPTCHAを実装してみます。 メールフォームは「Contact Form 7を使用します。
●●●
reCAPTCHA登録ページから、ページ上部の【v3 Admin Console】をクリックします。
●●●
❶識別ラベルを入力します。 後でサイトを容易に識別できるラベルを使用してください。
❷reCAPTCHAタイプを選択します。 reCAPTCHA v2を選択すると、チェックボックスおよび画像による認証が行われます。 reCAPTCHA v3を選択すると、チェックボックスや画像認証がユーザーに課されることはなく、自動的に人間かbotかの判断が行われます。
サイトキーは、いずれか1つのreCAPTCHAタイプでのみ機能します。詳しくはreCAPTCHA公式ガイドをご覧ください。 reCAPTCHA公式ガイド –
https://developers.google.com/recaptcha/docs/versions ❸reCAPTCHAを実装するウェブサイトのドメインを指定します。 ここに入力したドメインと、そのサブドメインが登録対象となります。 つまり、example.com を登録すると subdomain.example.com も登録されます。
❹メールアドレスを追加する場合は入力します。 デフォルトでは、Googleアカウントに登録したメールアドレスが表示されます。 管理用のメールアドレスを追加する場合のみ入力してください。
❺reCAPTCHA利用条件を確認し、チェックを入れます。
❻アラートを受け取る場合、チェックを入れます。 設定エラーや不審なトラフィックの増加など、サイトで問題が検出された場合に❹で設定したメールアドレス宛にアラートが通知されます。
❼設定完了後、【送信】ボタンをクリックします。
●●●
サイトキーとシークレットキーが発行されますので、それぞれコピーします。 コピーしたAPIキーはパソコンのメモ帳などに貼り付けておくなどしておきます。
メールフォーム用プラグイン【Contact Form 7】とreCAPTCHAを連携する
●●●
reCAPTCHAを導入するホームページにログインします。 WordPress管理メニューから、【お問い合わせ】 → 【インテグレーション】をクリックします。
●●●
画面が切り替わったら、【インテグレーションのセットアップ】をクリックします。
●●●
発行済みのreCAPTCHAサイトキーとシークレットキーを貼り付けます。 貼り付け後、【変更を保存】をクリックします。
以上、プラグイン【Contact Form 7】とreCAPTCHAを連携する方法について説明しました。 設定したメールフォームに実際にreCAPTCHAが反映されているか確認してください。
reCAPTCHA Enterprise(有料版)について
【reCAPTCHA v2,v3】 と 【reCAPTCHA Enterprise】の主な違い
「reCAPTCHA」と「reCAPTCHA Enterprise」の主な違いは、「reCAPTCHA」が完全無料で使用できるのに対して、「reCAPTCHA Enterprise」は費用がかかります。 reCAPTCHAは、アクセスが多いWebサイトでは使用できません。 1ヶ月に100万回を超えたり、1秒間に1000回を超えるようなキーのリクエストがあるWebサイトは「reCAPTCHA Enterprise」を使用することをお勧めします。
【reCAPTCHA Enterprise】の費用について
reCAPTCHA Enterpriseの費用は、2021年7月時点で以下のようになります。
– 1ヶ月100万回までのキーのリクエスト→無料 – 1ヶ月100万回~1000万回キーのリクエスト→リクエスト1,000回あたりUS$1 – 1000万回キーを超えるリクエスト→Google Cloud Platform(GCP)に問い合わせが必要
reCAPTCHA Enterpriseへの移行方法
Google Cloud Platformへの支払い情報を登録する
●●●
Google Cloud Platformへのログイン後、管理メニューの【お支払い】から支払い情報を登録することができます。 表示される画面に従って請求先アカウントを作成してください。
reCAPTCHA Enterpriseに登録する
●●●
管理メニューから【セキュリティ】 → 【reCAPTCHA Enterprise】をクリックします。
●●●
画面が切り替わったら、[プロジェクトを作成]をクリックします。 ※プロジェクトを既に持っている方はご使用になるプロジェクトを選択します。
●●●
プロジェクト名と場所を入力し、【作成】ボタンをクリックしてプロジェクトを作成します。
●●●
作成したプロジェクトの詳細画面が表示されるので、【有効にする】をクリックします。 ※reCAPTCHA Enterpriseを使用するためには請求先アカウントが必要になります。 【有効にする】クリック後、請求先アカウントが求められ、登録するとreCAPTCHA Enterpriseを利用することができます。