3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ShoheiAdvent Calendar 2022

Day 4

reCAPTCHAをシステム導入するときに見るイメージ図

Last updated at Posted at 2021-11-27

image.png

  1. FrontendからreCAPTCHAで判定した結果をGoogleに送信
  2. Googleから判定結果を照会するためのreCAPTCHAトークンが発行される
  3. 発行されたreCAPTCHAトークンをBackendに送信
  4. BackendでGoogleにreCAPTCHAトークンを送信し結果を照会
  5. Googleから取得した判定結果を利用して、reCAPTCHAのエラー処理または処理を続行する

reCAPTCHA認証とは

wikipedia
reCAPTCHA(リキャプチャ)とは、ウェブサイトの制限エリアへのアクセスを試みるボットからサイトを防御するためCAPTCHAを利用するのと同時に、そのCAPTCHAに対する返答を紙の本のデジタル化に活かすシステムである。

ボットと呼ばれるアクセスを検知して防御する仕組みです。

ボットによる不正利用の例

  • ログインを行う画面で、ユーザーID、パスワードをランダムに入力してログインできるか試すのを、自動的に大量に行う
  • 口コミなどの評価を故意に上げ下げする為など、存在しない評価コメントを自動的に投稿する
  • SNSで、悪用目的に作成したアカウントで友達申請を、自動的に行う

システム導入するときにやること

  1. reCAPTCHAの利用登録
  2. FrontendにreCAPTCHAが提供するスクリプト、判定処理、ボタンを埋め込む
  3. BackendにreCAPTCHAトークン判定処理(WebAPI呼び出し、結果判定)を追加

reCAPTCHAの種類

  • reCAPTCHA v3
    • サイト利用者に、reCAPTCHAの判定(文字入力やタイル選択)を求めません
    • カーソル移動などのサイト操作情報をGoogleに送信しボット判定を行います
  • reCAPTCHA v2
    • チェックボックスタイプ
      • サイト利用者に、「ロボットではありません」のチェックボックスの操作と、ボットの疑いがあると判断した場合に、タイル選択を求めます
      • Googleに送信する情報は、タイル選択結果などの限られた情報です
    • バッチタイプ
      • サイト利用者に、ボットの疑いがあると判断した場合に、タイル選択を求めます
      • Googleに送信する情報は、タイル選択結果などの限られた情報です
3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?