IP アドレスの許可リストを構成する

信頼できる IP アドレスを reCAPTCHA の適用から除外するには、サイトに関連付けられている reCAPTCHA キーの許可リストを作成し、その許可リストに IP アドレスとサブネットを追加します。

IP アドレスとサブネットを許可リストから削除したり、許可リストに追加された IP アドレスとサブネットを一覧表示したりすることもできます。

始める前に

  • 許可リストに追加するすべての IP アドレスとサブネットを収集します。

  • 許可リストから削除する IP アドレスとサブネットを特定します。

  • reCAPTCHA Enterprise 管理者(roles/recaptchaenterprise.admin)の Identity and Access Management ロールがあることを確認します。

IP アドレスまたはサブネットを許可リストに追加する

IP アドレスまたはサブネットを許可リストに追加すると、reCAPTCHA は検証をスキップし、その IP アドレスまたはサブネットからのリクエストに常に 0.9 のスコアを与えます。許可リストに追加できる IP アドレスとサブネットは最大 100 個です。

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 後述のコマンドデータを使用する前に、次のように置き換えます。

    • KEY: サイトに関連付けられている reCAPTCHA キー。
    • IP_ADDRESS_OR_SUBNET: 許可リストに追加する必要がある IP アドレスまたはサブネット。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud recaptcha keys add-ip-override
    KEY \
    --ip=IP_ADDRESS_OR_SUBNET \
    --override=ALLOW

    Windows(PowerShell)

    gcloud recaptcha keys add-ip-override
    KEY `
    --ip=IP_ADDRESS_OR_SUBNET `
    --override=ALLOW

    Windows(cmd.exe)

    gcloud recaptcha keys add-ip-override
    KEY ^
    --ip=IP_ADDRESS_OR_SUBNET ^
    --override=ALLOW

REST

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

  • KEY: サイトに関連付けられている reCAPTCHA キー。
  • IP_ADDRESS_OR_SUBNET: 許可リストに追加する必要がある IP アドレスまたはサブネット。
  • PROJECT_ID: Google Cloud プロジェクト ID

HTTP メソッドと URL:

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

リクエストの本文(JSON):


{
  "ip_override_data": {
    "ip": "IP_ADDRESS_OR_SUBNET",
    "override_type": "ALLOW"
  }
}

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

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/KEY:addIpOverride"

PowerShell

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/KEY:addIpOverride" | Select-Object -Expand Content

成功したことを示すステータス コード(2xx)と空のレスポンスが返されます。

IP アドレスまたはサブネットを許可リストに追加すると、数分以内に変更が有効になります。

許可リストから IP アドレスまたはサブネットを削除する

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 後述のコマンドデータを使用する前に、次のように置き換えます。

    • KEY: サイトに関連付けられている reCAPTCHA キー。
    • IP_ADDRESS_OR_SUBNET: 許可リストに追加する必要がある IP アドレスまたはサブネット。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud recaptcha keys remove-ip-override
    KEY \
    --ip=IP_ADDRESS_OR_SUBNET \
    --override=ALLOW

    Windows(PowerShell)

    gcloud recaptcha keys remove-ip-override
    KEY `
    --ip=IP_ADDRESS_OR_SUBNET `
    --override=ALLOW

    Windows(cmd.exe)

    gcloud recaptcha keys remove-ip-override
    KEY ^
    --ip=IP_ADDRESS_OR_SUBNET ^
    --override=ALLOW

REST

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

  • KEY: サイトに関連付けられている reCAPTCHA キー。
  • IP_ADDRESS_OR_SUBNET: 許可リストに追加する必要がある IP アドレスまたはサブネット。
  • PROJECT_ID: Google Cloud プロジェクト ID

HTTP メソッドと URL:

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

リクエストの本文(JSON):


{
  "ip_override_data": {
    "ip": "IP_ADDRESS_OR_SUBNET",
    "override_type": "ALLOW"
  }
}

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

curl

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/KEY:removeIpOverride"

PowerShell

リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/KEY:removeIpOverride" | Select-Object -Expand Content

成功したことを示すステータス コード(2xx)と空のレスポンスが返されます。

IP アドレスまたはサブネットを許可リストから削除すると、数分以内に変更が有効になります。

許可リストのすべての IP アドレスを一覧表示する

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 後述のコマンドデータを使用する前に、次のように置き換えます。

    • KEY: サイトに関連付けられている reCAPTCHA キー。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud recaptcha keys list-ip-overrides KEY --format=json

    Windows(PowerShell)

    gcloud recaptcha keys list-ip-overrides KEY --format=json

    Windows(cmd.exe)

    gcloud recaptcha keys list-ip-overrides KEY --format=json

REST

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

  • KEY: サイトに関連付けられている reCAPTCHA キー。
  • PROJECT_ID: Google Cloud プロジェクト ID

HTTP メソッドと URL:

GET https://recaptchaenterprise.googleapis.com/v1/projects//keys/:listIpOverrides

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

curl

次のコマンドを実行します。

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://recaptchaenterprise.googleapis.com/v1/projects//keys/:listIpOverrides"

PowerShell

次のコマンドを実行します。

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects//keys/:listIpOverrides" | Select-Object -Expand Content

次のような JSON レスポンスが返されます。


{
  "ipOverrides": [
    {
      "ip": "1.2.3.4",
      "overrideType": "ALLOW"
    }
  ],
  "nextPageToken": ""
}


次のステップ