reCAPTCHA Enterpriseとは?従来との違いや導入方法などを解説

GCP

こんにちは。KIYONOエンジニアの田代です。

今回はGoogle CloudのreCAPTCHA Enterpriseについて調べてみました。

reCAPTCHAとは?

reCAPTCHAとはGoogleが提供するセキュリティサービスの一つであり、デバイスを操作しているユーザーがbotなのか人間なのかを自動的に判別するためのツールになります。

Webサイトを閲覧にしている時などに「正しい画像を選択してください」や「私はロボットではありません」のような表示を見たことがある方も多いと思います。

ざっくり言えば、これらがreCAPTCHAと呼ばれているものです。

reCAPTCHAの種類

Webサイトやbotが時代の流れと共に進化してきたように、
reCAPTCHAも進化し続け、以下の3つのバージョンが存在します。

reCAPTCHA v1

recaptcha v1

reCAPTCHA v1は、その名の通りreCAPTCHAの一番最初のバージョンとなっており、歪んだ文字を表示して正しい文字列をユーザーに入力させるものとなっていました。

これはbotが歪んだ文字列を認識できないことを前提にしたものとなっていますが、技術の進歩によりbotが歪んだ文字列を認識可能になったことにより、

2018年3月にサービス終了になり、現在では利用不可となっています。

reCAPTCHA v2

reCAPTCHA v2

reCAPTCHA v2は画像を用いたチャレンジを表示し選択させるユーザー判別手法です。

上記画面に馴染みのある方も多いのではないでしょうか?

画面の指示に沿って正しい画像を選択した後、「私はロボットではありません」にチェックを入れると認証が完了します。

reCAPTCHA v3

reCAPTCHA v3

ここまででご紹介した「reCAPTCHA v1」と「reCAPTHCA v2」では、ユーザーに何らかの操作を要求し、その結果によってデバイスを操作しているユーザーがbotなのか人間なのか判別していました。

これはユーザーが煩わしさを感じる原因にもなりますし、チャレンジのスコアによってはユーザーが人間の場合でもbotと判別されることもあり得ます。

そこで登場したのがreCAPTCHA v3で、対象のサイトにスクリプトを仕込むことで、画面遷移のスピードやweb上の行動履歴などを総合的にスコア化して、自動的にユーザー判別を行えるようになりました。
これにより、ユーザー側での操作は不要になり、UXを大きく向上させることが可能となりました。

reCAPTCHA Enterpriseとは?

reCAPTCHA EnterpriseはGoogle Cloud提供されている製品の一つであり、reCAPTCHA v3がベースとなっています。

そのため、Google Cloudの利用規約に準拠しているほか、「モバイル対応」や「2要素認証」など、Google Cloudのサービスならではの特徴を持っています。

また、reCAPTCHA EnterpriseはGoogleが10年以上に渡って様々なWebサイトをreCAPTCHAで保護し蓄積した技術を企業のセキュリティ課題に特化して再設計したサービスです。

そのため、スクレイピングや認証情報の読み取り、自動アカウント作成などの不正行為からwebサイトを守り、自動botの悪用などによる損失を回避できます。

また、reCAPTCHA EnterpriseはreCAPTCHA v3と同様にユーザーに煩わしさを感じさせない設計になっている点も重要なポイントです。

reCAPTCHA Enterpriseの料金体系

reCAPTCHA Enterpriseは呼び出しごとに月単位で料金が請求されます。

API 1~1,000,000 回の呼び出し(月間) 1,000,001~10,000,000 回の呼び出し(月間) 10,000,001 回以上の呼び出し(月間)
zassessments.create 無料 呼び出し1,000回あたり1米ドル Google Cloudセールスチームに問い合わせ
siteverify 無料 呼び出し1,000回あたり1米ドル Google Cloudセールスチームに問い合わせ

reCAPTCHA Enterpriseと従来のreCAPTCHAとの性能比較

機能 v2 v3 Enterprise
チェックボックスによる検証 ×
スコアによる検証 ×
WAFによる検証 × ×
多要素認証(MFA)のサポート(セキュリティ審査が必要) × ×
パスワード漏洩の検出 × ×
アカウント防御(セキュリティ審査が必要) × ×
不正行為の防止(セキュリティ審査が必要) × ×
スコアの粒度(セキュリティ審査が必要) × ×

参考:reCAPTCHA のバージョン間の機能の比較

料金についてはいずれも100万評価まで無料と変わらないのにもかかわらず、従来のreCAPTCHAよりも多くの機能を有していることがわかります。

ただ料金について一点注意があり、いずれも100万評価まで無料は変わりませんが、従来のreCAPTCHAは100万評価を超えると制限がかかるのに対して、reCAPTCHA Enterpriseは100万評価を超えると料金表に応じて料金がかかります。

reCAPTCHA Enterpriseの導入方法

ざっくりですが、reCAPTCHA Enterpriseの導入方法についてご紹介します。

  1. Google Cloudでプロジェクトを作成
  2. Google Cloudへ会員登録・ログインし、プロジェクトを作成

  3. reCAPTCHA Enterprise APIを有効化
  4. 作成したプロジェクトで「reCAPTCHA Enterprise API」と検索し、有効にします。

  5. APIキーを生成
  6. reCAPTCHA Enterprise APIを有効にした後、APIキーを生成します。
    このキーはウェブサイトでreCAPTCHAを利用する際に必要になります。

  7. サイトキーの設定
  8. reCAPTCHA Enterpriseのダッシュボードから「キーを作成」を選択し、サイトキーを生成します。
    このキーは公開可能で、ウェブサイトのクライアントサイドで使用します。

  9. シークレットキーの保管
  10. サーバーサイドでの検証に使用するため、シークレットキーは忘れずに保管してください。

  11. ウェブサイトへの組み込み
  12. サイトキーを使用して、ウェブサイトのクライアントサイドの適切な場所にreCAPTCHAウィジェットを組み込みます。
    通常、ログインフォームやコンタクトフォームに追加されることが多いです。

  13. 検証の実装
  14. クライアントサイドから送信されたreCAPTCHAの判断結果が、サーバーサイドでシークレットキーを使用して正しいものかどうかを検証するロジックを実装する必要があります。

  15. テストや調整
  16. 実装後、reCAPTCHAが期待通りに動作するかテストを行い、必要に応じて調整します。

導入するプロジェクトによっては追加で必要になることもあるかと思いますので、あくまでも流れを理解する参考程度にお願いします。

まとめ

今回は、reCAPTCHA Enterpriseの基本的な情報や導入方法をメインに解説させていただきました。

Webサイト運営などに関わる方でセキュリティなどに不安を抱える方はぜひ導入を検討してみてください。

お問い合わせ

    GCP
    田代陽向をフォローする
    KIYONO Engineer Blog

    コメント

    タイトルとURLをコピーしました