reCAPTCHAの設定方法について

reCAPTCHAの設定方法

FormNestでは、GoogleのreCAPTCHAサービスを使用してスパムを防止できます。この記事では、reCAPTCHAの設定方法を詳しく解説します。

reCAPTCHAとは

reCAPTCHAは、Googleが提供する無料のスパム防止サービスです。フォームへの自動送信やボットによる攻撃を防ぐために使用されます。

主な特徴:

  • Googleが提供する無料のスパム防止サービス
  • 複数のバージョンに対応(v2、v2 Invisible、v3)
  • ユーザーに優しいインターフェース
  • 高度な機械学習によるボット検出
  • フォーム送信前に自動的に検証

💡 ヒント: reCAPTCHAを有効にすると、スパムメールや自動送信を大幅に減らすことができます。

reCAPTCHAのバージョン

FormNestでは、以下の3つのreCAPTCHAバージョンに対応しています:

reCAPTCHA v2(チェックボックス)

ユーザーが「私はロボットではありません」のチェックボックスをクリックするタイプです。

特徴:

  • ユーザーが明示的にチェックボックスをクリックする必要がある
  • 場合によっては画像認証が表示される
  • 最も一般的で、多くのサイトで使用されている
  • テーマ(ライト/ダーク)とサイズ(ノーマル/コンパクト)を選択可能

推奨: 一般的なフォームに適しています。

reCAPTCHA v2(Invisible)

ユーザーが何も操作しなくても、バックグラウンドで自動的に検証されるタイプです。

特徴:

  • ユーザーに追加の操作が不要
  • フォーム送信時に自動的に検証
  • 疑わしい場合のみ、追加の認証が表示される
  • ユーザー体験が向上

推奨: ユーザー体験を重視したい場合に適しています。

reCAPTCHA v3(スコアベース)

ユーザーの行動を分析してスコアを算出し、ボットの可能性を判定するタイプです。

特徴:

  • ユーザーに追加の操作が不要
  • バックグラウンドで自動的にスコアを算出
  • スコアに基づいて送信を許可/拒否
  • 最小スコアを設定可能(0.0-1.0)
  • Google Analyticsで追跡可能

推奨: 最新の技術を使用したい場合や、ユーザー体験を最優先したい場合に適しています。

基本的な設定手順

ステップ1: Google reCAPTCHAでキーを取得

まず、Google reCAPTCHA管理コンソールでサイトキーとシークレットキーを取得します。

  1. Google reCAPTCHA管理コンソールにアクセス
  2. 新しいサイトを登録
    • 「+」ボタンをクリックして新しいサイトを追加
    • ラベル(サイト名)を入力
    • 使用するreCAPTCHAバージョンを選択(v2、v2 Invisible、v3)
    • ドメインを入力(例:example.comwww.example.com
    • 複数のドメインを登録する場合は、改行で区切る
  3. 利用規約に同意
    • 利用規約を確認して同意
    • 「送信」ボタンをクリック
  4. キーをコピー
    • サイトキー(Site Key)をコピー
    • シークレットキー(Secret Key)をコピー
    • ⚠️ 重要: シークレットキーは他人に知られないように注意してください

⚠️ 注意:

  • reCAPTCHA v2とv3では、サイトキーとシークレットキーが異なります
  • 使用するバージョンに対応するキーを取得してください
  • ドメインは、実際にフォームを表示するサイトのドメインを入力してください
  • ローカル開発環境(localhost)でも使用できます

ステップ2: FormNestの設定画面を開く

  1. WordPress管理画面で「FormNest」→「設定」をクリック
  2. 設定画面が表示されます

ステップ3: reCAPTCHAを有効にする

  1. reCAPTCHAを有効化」にチェックを入れる
  2. チェックを入れると、reCAPTCHAの設定項目が表示されます

ステップ4: reCAPTCHAバージョンを選択

  1. reCAPTCHAバージョン」から使用するバージョンを選択:
    • reCAPTCHA v2(チェックボックス)
    • reCAPTCHA v2(Invisible)
    • reCAPTCHA v3(スコアベース)
  2. 選択したバージョンに対応する設定項目が表示されます

⚠️ 重要: 選択したバージョンに対応するキーを入力してください。v2とv3ではキーが異なります。

ステップ5: サイトキーとシークレットキーを入力

  1. サイトキー」フィールドに、Google reCAPTCHA管理コンソールで取得したサイトキーを貼り付け
  2. シークレットキー」フィールドに、Google reCAPTCHA管理コンソールで取得したシークレットキーを貼り付け
  3. シークレットキーは、デフォルトで非表示になっています。「表示/非表示」ボタンで表示/非表示を切り替えられます

ステップ6: バージョン別の設定

選択したバージョンに応じて、以下の設定を行います:

reCAPTCHA v2(チェックボックス)の場合
  • テーマ:ライトまたはダークを選択
  • サイズ:ノーマルまたはコンパクトを選択
reCAPTCHA v3(スコアベース)の場合
  • 最小スコア:0.0から1.0の間で設定(デフォルト:0.5)
    • 0.0:ボットの可能性が高い
    • 1.0:人間の可能性が高い
    • 推奨値:0.5(デフォルト)
  • アクション名:Google Analyticsで追跡する際のアクション名(デフォルト:submit)

ステップ7: 設定を保存

  1. すべての設定を入力したら、「設定を保存」ボタンをクリック
  2. 設定が保存されます

各設定項目の詳細

reCAPTCHAを有効化

reCAPTCHA機能を有効にするかどうかを設定します。

設定方法:

  • チェックを入れると、すべてのフォームでreCAPTCHAが有効になります
  • チェックを外すと、reCAPTCHAは無効になります

reCAPTCHAバージョン

使用するreCAPTCHAのバージョンを選択します。

選択肢:

  • reCAPTCHA v2(チェックボックス):一般的なチェックボックスタイプ
  • reCAPTCHA v2(Invisible):非表示タイプ
  • reCAPTCHA v3(スコアベース):スコアベースの最新バージョン

💡 ヒント: 初めて使用する場合は、reCAPTCHA v2(チェックボックス)を推奨します。

サイトキー

Google reCAPTCHA管理コンソールで取得したサイトキーを入力します。

設定方法:

  • Google reCAPTCHA管理コンソールで取得したサイトキーを貼り付け
  • サイトキーは公開されても問題ありません

⚠️ 注意: 選択したバージョンに対応するサイトキーを入力してください。v2とv3ではキーが異なります。

シークレットキー

Google reCAPTCHA管理コンソールで取得したシークレットキーを入力します。

設定方法:

  • Google reCAPTCHA管理コンソールで取得したシークレットキーを貼り付け
  • シークレットキーはデフォルトで非表示になっています
  • 「表示/非表示」ボタンで表示/非表示を切り替えられます

⚠️ 重要: シークレットキーは他人に知られないように注意してください。公開されると、セキュリティ上の問題が発生する可能性があります。

テーマ(reCAPTCHA v2のみ)

reCAPTCHAウィジェットの色テーマを選択します。

選択肢:

  • ライト:明るい背景に適したテーマ
  • ダーク:暗い背景に適したテーマ

💡 ヒント: サイトのデザインに合わせて選択してください。

サイズ(reCAPTCHA v2のみ)

reCAPTCHAウィジェットのサイズを選択します。

選択肢:

  • ノーマル:標準サイズ
  • コンパクト:小さめのサイズ

💡 ヒント: フォームのレイアウトに合わせて選択してください。

最小スコア(reCAPTCHA v3のみ)

reCAPTCHA v3で送信を許可する最小スコアを設定します。

設定方法:

  • 0.0から1.0の間で設定
  • デフォルト値:0.5
  • スコアがこの値未満の場合、送信が拒否されます

スコアの目安:

  • 0.0-0.3:ボットの可能性が高い
  • 0.3-0.7:疑わしい
  • 0.7-1.0:人間の可能性が高い

💡 ヒント: 最小スコアを高く設定すると、より厳格なスパム防止になりますが、正当なユーザーがブロックされる可能性もあります。デフォルトの0.5を推奨します。

アクション名(reCAPTCHA v3のみ)

reCAPTCHA v3で使用するアクション名を設定します。

設定方法:

  • アクション名を入力(デフォルト:submit)
  • Google Analyticsで追跡する際に使用されます
  • 複数のフォームで異なるアクション名を設定することで、フォームごとに追跡可能

使用例:

  • submit:デフォルト
  • contact_form:お問い合わせフォーム
  • newsletter_signup:ニュースレター登録フォーム

reCAPTCHAの動作

reCAPTCHA v2(チェックボックス)の動作

  1. フォームにreCAPTCHAウィジェットが表示される
  2. ユーザーが「私はロボットではありません」のチェックボックスをクリック
  3. Googleが自動的に検証を実行
  4. 疑わしい場合のみ、画像認証が表示される
  5. 検証が成功すると、フォーム送信が可能になる

reCAPTCHA v2(Invisible)の動作

  1. フォームにreCAPTCHAウィジェットは表示されない(非表示)
  2. ユーザーがフォーム送信ボタンをクリック
  3. バックグラウンドで自動的に検証が実行される
  4. 疑わしい場合のみ、追加の認証が表示される
  5. 検証が成功すると、フォーム送信が実行される

reCAPTCHA v3(スコアベース)の動作

  1. フォームにreCAPTCHAウィジェットは表示されない
  2. ユーザーがフォームを操作している間、バックグラウンドでスコアが算出される
  3. ユーザーがフォーム送信ボタンをクリック
  4. スコアが最小スコア以上の場合、フォーム送信が実行される
  5. スコアが最小スコア未満の場合、フォーム送信が拒否される

設定のテスト

設定が正しく動作しているかテストできます。

テスト方法

  1. 設定画面で「設定を保存」をクリック
  2. フォームを表示するページにアクセス
  3. フォームにreCAPTCHAが表示されているか確認
  4. フォームを送信して、正常に動作するか確認

確認ポイント:

  • reCAPTCHAウィジェットが正しく表示されているか(v2の場合)
  • フォーム送信時にエラーが発生しないか
  • 検証が正常に動作しているか

よくある設定例

例1: 基本的な設定(reCAPTCHA v2)

設定:

  • reCAPTCHAを有効化:✓
  • reCAPTCHAバージョン:reCAPTCHA v2(チェックボックス)
  • サイトキー:Google reCAPTCHA管理コンソールで取得したv2のサイトキー
  • シークレットキー:Google reCAPTCHA管理コンソールで取得したv2のシークレットキー
  • テーマ:ライト
  • サイズ:ノーマル

メリット:

  • 最も一般的で、多くのサイトで使用されている
  • 設定が簡単
  • ユーザーに分かりやすい

例2: ユーザー体験を重視した設定(reCAPTCHA v2 Invisible)

設定:

  • reCAPTCHAを有効化:✓
  • reCAPTCHAバージョン:reCAPTCHA v2(Invisible)
  • サイトキー:Google reCAPTCHA管理コンソールで取得したv2 Invisibleのサイトキー
  • シークレットキー:Google reCAPTCHA管理コンソールで取得したv2 Invisibleのシークレットキー

メリット:

  • ユーザーに追加の操作が不要
  • ユーザー体験が向上
  • 疑わしい場合のみ追加の認証が表示される

例3: 最新技術を使用した設定(reCAPTCHA v3)

設定:

  • reCAPTCHAを有効化:✓
  • reCAPTCHAバージョン:reCAPTCHA v3(スコアベース)
  • サイトキー:Google reCAPTCHA管理コンソールで取得したv3のサイトキー
  • シークレットキー:Google reCAPTCHA管理コンソールで取得したv3のシークレットキー
  • 最小スコア:0.5
  • アクション名:submit

メリット:

  • ユーザーに追加の操作が不要
  • 最新の機械学習技術を使用
  • Google Analyticsで追跡可能
  • スコアに基づいて柔軟に判定

トラブルシューティング

問題1: reCAPTCHAが表示されない

原因と解決方法:

  • reCAPTCHAが有効になっていない
    • 設定画面で「reCAPTCHAを有効化」にチェックが入っているか確認
    • 設定を保存する必要がある
  • サイトキーが正しく設定されていない
    • サイトキーが正しく入力されているか確認
    • サイトキーに余分なスペースが含まれていないか確認
  • ドメインが登録されていない
    • Google reCAPTCHA管理コンソールで、サイトのドメインが登録されているか確認
    • 登録されていない場合は、ドメインを追加
  • JavaScriptが無効になっている
    • ブラウザのJavaScriptが有効になっているか確認
    • 他のJavaScriptエラーがないか確認

問題2: フォーム送信時にエラーが発生する

原因と解決方法:

  • シークレットキーが正しく設定されていない
    • シークレットキーが正しく入力されているか確認
    • シークレットキーに余分なスペースが含まれていないか確認
  • バージョンとキーが一致していない
    • 選択したバージョンに対応するキーが入力されているか確認
    • v2とv3ではキーが異なります
  • サーバーがGoogleのAPIに接続できない
    • サーバーのファイアウォール設定を確認
    • サーバーがhttps://www.google.com/recaptcha/api/siteverifyにアクセスできるか確認

問題3: reCAPTCHA v3でスコアが低すぎる

原因と解決方法:

  • 最小スコアが高すぎる
    • 最小スコアを下げる(例:0.5から0.3に変更)
    • ただし、スコアを下げすぎると、スパムが通過する可能性があります
  • ユーザーの行動が疑わしい
    • VPNを使用している場合、スコアが低くなる可能性があります
    • ユーザーに通常の方法でアクセスしてもらう

問題4: 画像認証が頻繁に表示される(v2)

原因と解決方法:

  • ユーザーの行動が疑わしい
    • VPNを使用している場合、画像認証が表示される可能性があります
    • ユーザーに通常の方法でアクセスしてもらう
  • IPアドレスがブラックリストに登録されている
    • IPアドレスがGoogleのブラックリストに登録されている可能性があります
    • 時間をおいて再度試す

ベストプラクティス

1. バージョンの選択

  • 一般的なフォーム:reCAPTCHA v2(チェックボックス)を推奨
  • ユーザー体験を重視:reCAPTCHA v2(Invisible)またはv3を推奨
  • 最新技術を使用:reCAPTCHA v3を推奨

2. キーの管理

  • シークレットキーは安全に管理:他人に知られないように注意
  • バージョンとキーを一致させる:選択したバージョンに対応するキーを使用
  • 定期的にキーを確認:Google reCAPTCHA管理コンソールでキーの状態を確認

3. スコアの設定(v3)

  • デフォルト値を使用:最小スコアは0.5を推奨
  • 必要に応じて調整:スパムが多い場合は上げる、正当なユーザーがブロックされる場合は下げる
  • 定期的に確認:スコアの分布を確認して、適切な値を設定

4. テストの実施

  • 設定後に必ずテスト:フォームが正常に動作するか確認
  • 複数の環境でテスト:本番環境と開発環境の両方で確認
  • ユーザー体験を確認:実際のユーザーが使用する状況を想定して確認

よくある質問

Q: reCAPTCHAを無効にできますか?

A: はい、可能です。設定画面で「reCAPTCHAを有効化」のチェックを外すと、reCAPTCHAは無効になります。

Q: 複数のフォームで異なるreCAPTCHA設定を使用できますか?

A: 現在のバージョンでは、すべてのフォームで同じreCAPTCHA設定が使用されます。フォームごとに異なる設定を使用する機能は、今後のバージョンで追加予定です。

Q: reCAPTCHA v2とv3の違いは何ですか?

A: reCAPTCHA v2は、ユーザーがチェックボックスをクリックする必要があります。reCAPTCHA v3は、バックグラウンドで自動的にスコアを算出し、ユーザーに追加の操作は不要です。

Q: ローカル開発環境(localhost)でも使用できますか?

A: はい、可能です。Google reCAPTCHA管理コンソールで、localhostをドメインとして登録してください。

Q: シークレットキーが漏洩した場合、どうすればよいですか?

A: Google reCAPTCHA管理コンソールで、シークレットキーを再生成してください。その後、FormNestの設定画面で新しいシークレットキーを入力してください。

Q: reCAPTCHAが動作しない場合、どうすればよいですか?

A: まず、設定が正しく入力されているか確認してください。問題が解決しない場合は、サーバーのファイアウォール設定やJavaScriptのエラーを確認してください。

まとめ

reCAPTCHAの設定により、スパムメールや自動送信を大幅に減らすことができます。

設定のポイント:

  • Google reCAPTCHA管理コンソールでキーを取得
  • 使用するバージョンを選択(v2、v2 Invisible、v3)
  • 選択したバージョンに対応するキーを入力
  • バージョン別の設定を行う
  • 設定後にテストを実施して、正常に動作するか確認

詳細な設定方法については、「基本的なフォームの作成方法」の記事を参照してください。問題が解決しない場合は、ヘルプページの「よくある問題と解決方法」セクションを確認するか、サポートにお問い合わせください。