このドキュメントでは、プロジェクトでアクティブなサイト キーを reCAPTCHA Classic から reCAPTCHA に移行する方法について説明します。Google Cloud サイトキーは、 reCAPTCHA 管理コンソール(推奨) または コンソールを使用して移行できます。 Google Cloud 移行プロセスが完了するまでに 5 ~ 10 分かかります。コード不要です。
reCAPTCHA 管理コンソールでキーを管理している場合は、reCAPTCHA Classic を使用しています。最新の reCAPTCHA 機能は、プロジェクト内で管理されているサイトキー でのみ使用できます。 Google Cloud 利用可能な機能の詳細については、reCAPTCHA の各ティア間の機能の比較をご覧ください。
移行プロセスが完了すると、次の変更が行われます。
- サイトキーは、変更なしで Google Cloud プロジェクトで使用できます。
- 既存の reCAPTCHA 統合は、コードを変更しなくても引き続き機能します。ウェブページのインストルメンテーションとバックエンド呼び出しはそのまま保持できます。ただし、アカウント保護(機能)やパスワード防御などの機能にアクセスするには、ウェブページの計測手法とバックエンド呼び出しを変更する必要があります。詳細については、移行後に reCAPTCHA 機能を使用するをご覧ください。
- reCAPTCHA の月間無料枠(1 か月あたり 10,000 件の評価)を超えると、課金されます。詳細については、お支払い情報をご覧ください。
reCAPTCHA 管理コンソールを使用して移行する
reCAPTCHA 管理コンソールに移動します。
キーの移行先となるプロジェクトを選択します。
移行するキーを選択します。
[送信] をクリックします。
コンソールが開き、プロジェクトと移行したキーが表示されます。 Google Cloud
コンソールを使用して移行する Google Cloud
始める前に
-
コンソールのプロジェクト セレクタページで、プロジェクトを選択または作成します。 Google Cloud Google Cloud
プロジェクトを選択または作成するために必要なロール
- プロジェクトを選択する: プロジェクトの選択に特定の IAM ロールは必要ありません。ロールが付与されているプロジェクトを選択できます。
-
プロジェクトを作成する: プロジェクトを作成するには、プロジェクト作成者ロール
(
roles/resourcemanager.projectCreator)が必要です。これにはresourcemanager.projects.create権限が含まれています。詳しくは、ロールを付与する方法をご覧ください。
-
プロジェクト Google Cloud に対して課金が有効になっていることを確認します。
reCAPTCHA への移行では、プロジェクトで課金がリンクされ、有効になっている必要があります。 課金は、クレジット カードまたは既存の プロジェクトの課金 Google Cloud ID を使用して有効にできます。課金についてサポートが必要な場合は、 Cloud Billing サポートまでお問い合わせください。
- コンソールの外部で gcloud CLI を実行する場合は、
gcloud CLI をインストールして初期化します。 Google Cloud 手順については、をご覧ください。
Google Cloud CLI をインストールします。 インストールしたら、 初期化するには、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init外部 ID プロバイダ(IdP)を使用している場合は、まず フェデレーション ID を使用して gcloud CLI にログインする必要があります。
reCAPTCHA Enterprise API の有効化
すべての reCAPTCHA ティア(Essentials、Premium、Enterprise)は、reCAPTCHA Enterprise API で実行されます。
コンソール
コンソールで [reCAPTCHA Enterprise API] ページに移動します。 Google Cloud
ページの上部にあるプロジェクト セレクタにプロジェクト名が表示されていることを確認します。
プロジェクトの名前が表示されない場合は、プロジェクト セレクタをクリックしてプロジェクトを選択します。
- [有効にする] をクリックします。
gcloud
-
コンソールで Cloud Shell をアクティブにします。 Google Cloud
コンソールの下部にある Google Cloud Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。Cloud Shell はシェル環境です。Google Cloud CLI がすでにインストールされており、現在のプロジェクトの値もすでに設定されています。セッションが初期化されるまで数秒かかることがあります。
- gcloud セッションでプロジェクトを設定するには、 Google Cloud コマンドを実行します。
gcloud config set projectPROJECT_ID は Google Cloud プロジェクト ID に置き換えます。gcloud config set project PROJECT_ID - reCAPTCHA Enterprise API を有効にするには、
gcloud services enableコマンドを実行します。gcloud services enable recaptchaenterprise.googleapis.com - reCAPTCHA Enterprise API が有効になっていることを確認するには、
gcloud services listコマンドを実行します。gcloud services list --enabledreCAPTCHA Enterprise API が、有効な API のリストに含まれていることを確認します。
reCAPTCHA に移行する
reCAPTCHA Classic から reCAPTCHA に移行するには、reCAPTCHA 管理コンソールでアクティブなサイトキーを選択し、サイトキーを移行します。 1 つまたは複数のアクティブなサイトキーを移行できます。ただし、一度に移行できるサイトキーは 1 つのみです。
移行プロセスを実行するには、次の要件を満たす reCAPTCHA ユーザー アカウントを保有していることが必要です。
- reCAPTCHA 管理コンソールに、移行するサイトキーのオーナーとしてユーザー アカウントが表示されます。
- ユーザー アカウントには、reCAPTCHA Enterprise API が有効な
Google Cloud プロジェクトで次のいずれかの IAM ロールが付与されています:
- プロジェクト オーナー(
roles/owner) - プロジェクト編集者(
roles/editor) - reCAPTCHA 管理者(
roles/recaptchaenterprise.admin)
- プロジェクト オーナー(
コンソール、Google Cloud CLI、または reCAPTCHA Enterprise API を使用して、サイトキーを移行します。 Google Cloud
サイトキーを移行しても、キーや API エンドポイントには影響しません。Enterprise ライセンスにキーが追加されます。
Google Cloud コンソール
コンソールで、[reCAPTCHA] ページに移動します。 Google Cloud
ページの上部にあるリソース セレクタにリソース名が表示されていることを確認します。 プロジェクトの名前が表示されない場合は、リソース セレクタをクリックしてプロジェクトを選択します。
[Classic keys] セクションで、移行するキーを特定し、[Upgrade key] をクリックします。
選択したキーの移行を完了するには、[確認] をクリックします。
gcloud CLI
認証を構成するには、次の
gcloudコマンドを実行します。gcloud auth login選択したサイトキーを所有し、プロジェクト所有者、プロジェクト編集者、または reCAPTCHA Enterprise 管理者のいずれかのロールをもつ reCAPTCHA ユーザー アカウントでログインします。
reCAPTCHA をウェブページに統合するために使用したアクティブなサイトキーを選択してコピーします。
- reCAPTCHA 管理コンソールに移動し、[] をクリックします。
サイトキーを選択します。移行でサポートされている reCAPTCHA サイトキー: reCAPTCHA v2 Checkbox、reCAPTCHA v2 Invisible、および reCAPTCHA v3。
サイトキーをコピーするには、[サイトキーをコピー] をクリックします。
サイトキーを移行します。
次の例に示すように、
gcloud recaptcha keys migrateコマンドを使用します。gcloud recaptcha keys migrate SITE_KEY --project PROJECT-ID
次の値を指定します。
- SITE_KEY: reCAPTCHA 管理コンソールからコピーしたアクティブなサイトキー。
- PROJECT-ID: reCAPTCHA Enterprise API が有効になっている Google Cloud プロジェクトの ID 。
REST API
reCAPTCHA をウェブページに統合するために使用したアクティブなサイトキーを選択してコピーします。
- reCAPTCHA 管理コンソールに移動し、[] をクリックします。
サイトキーを選択します。移行でサポートされている reCAPTCHA サイトキー: reCAPTCHA v2 Checkbox、reCAPTCHA v2 Invisible、および reCAPTCHA v3。
サイトキーをコピーするには、[サイトキーをコピー] をクリックします。
サイトキーを移行します。
リクエストのデータを使用する前に、 次のように置き換えます。
- PROJECT_ID: reCAPTCHA API が有効になっている Google Cloud プロジェクトの ID。
- SITE_KEY: reCAPTCHA 管理コンソールからコピーしたアクティブなサイトキー。
HTTP メソッドと URL:
POST https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/SITE_KEY:migrate
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d "" \
"https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/SITE_KEY:migrate"PowerShell
次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-Uri "https://recaptchaenterprise.googleapis.com/v1/projects/PROJECT_ID/keys/SITE_KEY:migrate" | Select-Object -Expand Content次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT-ID/keys/6Ldqgs0UAAAAAIn4k7YxEB-LwEh5S9-Gv6IIWB8m", "displayName": "My site key", "webSettings": { "allowAllDomains": false, "allowedDomains": [ recaptcha.net ], "allowAmpTraffic": false, "integrationType": "SCORE", "challengeSecurityPreference": "CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED" } }
サイトキーが移行されたことを確認する手順は次のとおりです。
Google Cloud コンソール
[reCAPTCHA] ページに移動し、[reCAPTCHA のキー] セクションで移行されたサイトキーを探します。
gcloud CLI
gcloud recaptcha keys listコマンドを実行し、キーのリストで移行したサイトキーを探します。
reCAPTCHA に移行した後も、siteverify メソッドを使用してユーザーの reCAPTCHA レスポンス
トークンを評価できます。レスポンスについては、Response of the siteverify methodをご覧ください。
サイトキーが reCAPTCHA に移行すると、その使用状況 が記録され、 Google Cloud コンソールに1 時間以内に表示されます。 使用状況とスコア関連のダッシュボードも表示されます。移行前の使用状況は 通常、コンソールに表示されません。 Google Cloud
reCAPTCHA ユーザー アカウントから、reCAPTCHA Enterprise 管理者(roles/recaptchaenterprise.admin)の IAM ロールを取り消すことができます。管理者にアクセス権の取り消しを依頼するか、アクセス権の付与、変更、取り消しの手順に沿って操作します。