ユニバーサル キーを使用して Policy Engine を設定する

このドキュメントでは、ユニバーサル キーを使用してウェブサイトで Policy Engine を構成する方法について説明します。 ユニバーサル キーは、Policy Engine 内でのルールの作成をサポートする新しい Google Cloud Fraud Defense キーです。

Policy Engine を使用すると、Fraud Defense は、構成した カスタム ポリシー ルールに基づいて CAPTCHA チャレンジを決定論的にトリガーできます。これらのルールは、リスクスコア、IP アドレス、ユーザー エージェント、ASN、または確認済みのボット(AI エージェント)の ID に基づいて、Fraud Defense チャレンジを表示するタイミングを決定します。

Fraud Defense Policy Engine の構成には、次の 2 つの主な機能があります。

  • AutoExecute 統合(protected_endpoint_group: 送信される非同期ネットワーク リクエストを自動的に検査して reCAPTCHA トークンを添付することで、フロントエンド JavaScript の統合を簡素化します。これにより、フロントエンドに必要なのはスクリプト タグのみになります。
  • チャレンジ ポリシー(challenge_rule_groups: さまざまなユーザー アクションでチャレンジを表示するかどうかを決定し、カスタム CEL ベースのルールを使用して、関連するチャレンジの難易度レベル(USABILITYBALANCESECURITY)を構成します。

始める前に

  1. reCAPTCHA 用に環境を準備します

  2. プロジェクト Google Cloud に対して課金が有効になっていることを確認します

    Fraud Defense で Policy Engine を使用するには、プロジェクトで課金をリンクして有効にする必要があります。課金は、 クレジット カードまたは既存の Google Cloud プロジェクトの課金 ID を使用して有効にできます。課金についてサポートが必要な場合は、 Cloud Billing サポートまでお問い合わせください

ユニバーサル キーを作成する

使用するインターフェースに応じて、適切なオプションを選択してユニバーサル キーを作成します。

コンソール

  1. コンソールで、[reCAPTCHA] ページに移動します。 Google Cloud

    [reCAPTCHA] に移動

  2. ページの上部にあるプロジェクト セレクタにリソース名が表示されていることを確認します。

    プロジェクトの名前が表示されない場合は、リソース セレクタをクリックして プロジェクトを選択します。

  3. [キー] タブを選択します。
  4. [鍵を作成] をクリックします。
  5. [表示名] フィールドに、キーの表示名を入力します。
  6. [アプリケーションの種類] で [ユニバーサル] を選択します。
  7. [鍵を作成] をクリックします。

新しく作成された鍵は、[reCAPTCHA のキー] ページにリストされています。

gcloud

Google Cloud CLI を使用してユニバーサル キーを作成するには、 gcloud recaptcha keys create コマンドに --universal フラグを指定します。

gcloud recaptcha keys create --universal --display-name=DISPLAY_NAME

レスポンスには、新しく作成された reCAPTCHA ユニバーサル キーが含まれます。

REST API

REST API を使用してユニバーサル キーを作成するには、 projects.keys.create メソッドを使用して universalSettings を指定します。

POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys

{
  "displayName": "DISPLAY_NAME",
  "universalSettings": {}
}

次のように置き換えます。

  • PROJECT_ID: 実際の Google Cloud プロジェクト ID
  • DISPLAY_NAME: キーの表示名(通常はウェブサイト名)

レスポンスには、新しく作成された reCAPTCHA ユニバーサル キーが含まれます。

Policy Engine のドメインを構成する

使用するインターフェースに応じて、適切なオプションを選択してユニバーサル キーの許可ドメインを構成します。

コンソール

  1. コンソールで、[Fraud Defense] ページに移動します。 Google Cloud

    [Fraud Defense] に移動

  2. ページの上部にあるリソース セレクタにプロジェクトの名前が表示されていることを確認します。

    プロジェクトの名前が表示されない場合は、リソース セレクタをクリックしてプロジェクトを選択します。

  3. [reCAPTCHA Keys] タブをクリックします。

  4. 構成するユニバーサル キーを特定し、そのキーをクリックします。

  5. [キーの詳細] ページで、[キーを編集] をクリックします。

  6. [キーの使用状況の設定] セクションを見つけます。

    ドメインとサブドメインの reCAPTCHA キーを保護するには、[ドメインの所有権の証明を無効にする] トグルがオフになっていることを確認します。

    サイトの制限はないため、ドメインの所有権の証明の無効化はセキュリティ リスクとなります。したがって、reCAPTCHA キーは誰でもアクセスして使用できます。

    お使いのウェブサイトのドメイン名を入力してください。

    1. [ドメインリスト] セクションで、[ドメインを追加] をクリックします。
    2. [ドメイン] フィールドにドメインの名前を入力します。
    3. 省略可: ドメインを追加するには、[ドメインを追加] をクリックし、[ドメイン] フィールドに別のドメインの名前を入力します。最大 250 個のドメインを追加できます。
  7. [変更を保存] をクリックします。

gcloud

Google Cloud CLI を使用してユニバーサル キーの許可ドメインを更新するには、 gcloud alpha recaptcha policies update コマンドを使用し、ポリシー構成ファイル(例: POLICY.yaml)でドメインを指定します。

gcloud alpha recaptcha policies update --key=KEY_ID --policy=POLICY.yaml

POLICY.yaml ファイルでは、clientSettings の下に許可ドメインを指定する必要があります。

clientSettings:
  allowedDomains:
    - DOMAIN_NAME_1
    - DOMAIN_NAME_2

または、すべてのドメインを許可してドメインの所有権の証明を無効にするには、POLICY.yaml ファイルで allowAllDomainstrue に設定します。

clientSettings:
  allowAllDomains: true

次のように置き換えます。

  • KEY_ID: ユニバーサル キーの ID または完全なリソース名
  • DOMAIN_NAME_1DOMAIN_NAME_2: キーの使用が許可されているウェブサイトのドメイン名

REST API

REST API を使用してユニバーサル キーの許可ドメインを更新するには、 projects.keys.updatePolicy メソッドを使用します。

リクエスト データを使用する前に、 次のように置き換えます:

  • PROJECT_ID: 実際の Google Cloud プロジェクト ID
  • KEY_ID: ユニバーサル キーの ID
  • DOMAIN_NAME_1DOMAIN_NAME_2: キーの使用が許可されているウェブサイトのドメイン名

HTTP メソッドと URL:

PATCH https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/KEY_ID/policy?updateMask=clientSettings.allowedDomains,clientSettings.allowAllDomains

リクエストの JSON 本文:

{
"clientSettings": {
  "allowedDomains": [
    "DOMAIN_NAME_1",
    "DOMAIN_NAME_2"
  ],
  "allowAllDomains": false
}
}

リクエストを送信するには、次のいずれかのオプションを展開します。

成功すると、リクエストは更新されたポリシー構成を返します。

次のステップ