このドキュメントでは、アクティブなサイトキーを reCAPTCHA Classic からGoogle Cloud プロジェクトの reCAPTCHA 階層に移行する方法について説明します。サイトキーは、reCAPTCHA 管理コンソール(推奨)または Google Cloud コンソールを使用して移行できます。移行プロセスが完了するまでに 5~10 分かかります。コードを変更する必要はありません。
reCAPTCHA 管理コンソールでキーを管理している場合、reCAPTCHA Classic を使用しています。reCAPTCHA Classic は、機能が制限され、毎月の使用量が厳密に制限されています。最新の reCAPTCHA 機能は、 Google Cloud プロジェクト内で管理されているサイトキーでのみ使用できます。利用可能な機能の詳細については、reCAPTCHA の各ティアを比較するをご覧ください。
移行プロセスを完了すると、次の変更が行われます。
- サイトキーは、変更せずに Google Cloud プロジェクトで使用できます。
- 既存の reCAPTCHA 統合は、コードを変更しなくても引き続き機能します。同じウェブページの計測とバックエンド呼び出しを保持できます。ただし、アカウント ディフェンダーやパスワード ディフェンスなどの機能にアクセスするには、ウェブページの計測とバックエンド呼び出しを変更する必要があります。詳細については、移行後に reCAPTCHA の機能を使用するをご覧ください。
- reCAPTCHA の月間無料枠(1 か月あたり 10,000 件の評価)を超えると、料金が発生します。詳細については、お支払い情報をご覧ください。
reCAPTCHA 管理コンソールを使用して移行する
reCAPTCHA 管理コンソールに移動します。
鍵の移行先となるプロジェクトを選択します。
移行するキーを選択します。
[送信] をクリックします。
Google Cloud コンソールが開き、プロジェクトと移行した鍵が表示されます。
Google Cloud コンソールを使用して移行する
始める前に
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
reCAPTCHA への移行では、プロジェクトで課金がリンクされ、有効になっている必要があります。課金は、クレジット カードまたは既存の Google Cloud プロジェクトの課金 ID を使用して有効にできます。課金についてサポートが必要な場合は、Cloud Billing サポートまでお問い合わせください。
- Google Cloud コンソールの外部で gcloud CLI を実行する場合は、gcloud CLI をインストールして初期化します。手順については、
Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
reCAPTCHA Enterprise API の有効化
すべての reCAPTCHA 階層(Essentials、Standard、Enterprise)は、reCAPTCHA Enterprise API で実行されます。
コンソール
Google Cloud コンソールで、[reCAPTCHA Enterprise API] ページに移動します。
ページの上部にあるプロジェクト セレクタにプロジェクト名が表示されていることを確認します。
プロジェクトの名前が表示されない場合は、プロジェクト セレクタをクリックしてプロジェクトを選択します。
- [有効にする] をクリックします。
gcloud
-
In the Google Cloud console, activate Cloud Shell.
- gcloud セッションで Google Cloud プロジェクトを設定するには、
gcloud config set project
コマンドを実行します。PROJECT_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 --enabled
reCAPTCHA 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 コンソール、Google Cloud CLI、または reCAPTCHA Enterprise API を使用して、サイトキーを移行します。
サイトキーを移行しても、キーや API エンドポイントには影響しません。Enterprise ライセンスにキーが追加されます。
Google Cloud コンソール
Google Cloud コンソールで、[reCAPTCHA] ページに移動します。
ページの上部にあるリソース セレクタにリソース名が表示されていることを確認します。 プロジェクトの名前が表示されない場合は、リソース セレクタをクリックしてプロジェクトを選択します。
[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 レスポンス トークンを評価できます。レスポンスについては、siteverify method
のレスポンスをご覧ください。
サイトキーが reCAPTCHA に移行されると、その使用状況が記録され、 Google Cloud コンソールに1 時間以内に表示されるようになります。これには、使用状況とスコア関連のダッシュボードが含まれます。移行前の使用量は、通常、 Google Cloud コンソールに表示されません。
reCAPTCHA ユーザー アカウントから、reCAPTCHA Enterprise 管理者(roles/recaptchaenterprise.admin
)の IAM ロールを取り消すことができます。管理者にアクセス権の取り消しを依頼するか、アクセス権の付与、変更、取り消しの手順に沿って操作します。