Google Cloud 以外の環境での reCAPTCHA Enterprise の設定
このクイックスタートでは、次のシナリオで Google Cloud 以外の環境で reCAPTCHA Enterprise を設定する方法について説明します。
サービス アカウントなどの外部認証方法をサポートする Google Cloud、オンプレミス、CRM、SaaS 環境以外のクラウド内で reCAPTCHA Enterprise を使用している場合です。
ご使用の環境で次の要件を満たすには、v1 エンドポイントを使用する必要があります。
環境ではロールベースのアクセス制御(RBAC)が必要です。
ご使用の環境では、プレビューや早期アクセス プログラム(EAP)の機能(多要素認証(MFA)やパスワード漏洩検出など)は必要ありません。
Google Cloud 以外の環境で reCAPTCHA Enterprise を設定するには、reCAPTCHA Enterprise API を有効にして、サービス アカウントを作成し、バックエンド認証用のサービス アカウントを構成する必要があります。
始める前に
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
reCAPTCHA Enterprise API の有効化
Console
Cloud Console で [reCAPTCHA Enterprise API] ページに移動します。
ページの上部にあるプロジェクト セレクタにプロジェクト名が表示されていることを確認します。
プロジェクトの名前が表示されない場合は、プロジェクト セレクタをクリックしてプロジェクトを選択します。
- [有効にする] をクリックします。
gcloud
- 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 のリストに含まれていることを確認します。
バックエンド認証用のサービス アカウントの作成
Console
Cloud Console で、[サービス アカウント] ページに移動します。
- reCAPTCHA Enterprise API を有効にしたプロジェクトを選択します。
- [サービス アカウントを作成] をクリックします。
Cloud Console に表示するサービス アカウント名を入力します。
Cloud Console は、この名前に基づいてサービス アカウント ID を生成します。 必要に応じて ID を編集します。後で ID を変更することはできません。
- (省略可)サービス アカウントの説明を入力します。
- [作成] をクリックします。
- [ロールを選択] プルダウン メニューから [reCAPTCHA Enterprise エージェント] を選択します。
- [完了] をクリックします。
- サービス アカウントのリストで、作成したサービス アカウントのメールアドレスをクリックします。
- [鍵] をクリックします。
- [鍵を追加]、[新しい鍵を作成] の順に選択します。
- ダイアログで [JSON] を選択し、[作成] をクリックします。
キーを含む JSON ファイルがパソコンにダウンロードされます。
- [閉じる] をクリックします。
gcloud
-
サービス アカウントを作成します。NAME をサービス アカウントの名前に置き換えます。
gcloud iam service-accounts create NAME
-
サービス アカウントに reCAPTCHA Enterprise エージェント(
roles/recaptchaenterprise.agent
)権限を付与します。次の値を置き換えます。- PROJECT_ID: Google Cloud プロジェクト ID
- NAME: 権限を付与するサービス アカウントの名前
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:NAME@PROJECT_ID.iam.gserviceaccount.com" --role="roles/recaptchaenterprise.agent"
-
サービス アカウント キー ファイルを作成します。次の値を置き換えます。
- KEY_PATH: 秘密鍵の新しい出力ファイルのパス(例:
/home/user/Downloads/service-account-file.json
)。 - NAME: 鍵を作成するサービス アカウントの名前
- PROJECT_ID: Google Cloud プロジェクト ID
gcloud iam service-accounts keys create KEY_PATH --iam-account=NAME@PROJECT_ID.iam.gserviceaccount.com
- KEY_PATH: 秘密鍵の新しい出力ファイルのパス(例:
バックエンド認証用のサービス アカウントの構成
バックエンド認証用に作成した新しいサービス アカウントは、reCAPTCHA Enterprise クライアント ライブラリか Google Cloud CLI を使用して構成できます。
クライアント ライブラリ
-
環境変数
GOOGLE_APPLICATION_CREDENTIALS
を設定して、アプリケーション コードに認証情報を指定します。この変数は、現在のシェル セッションにのみ適用されます。この変数を新しいシェル セッションに適用する場合は、シェル起動ファイル(~/.bashrc
ファイルや~/.profile
ファイルなど)で変数を設定します。Linux または macOS
export GOOGLE_APPLICATION_CREDENTIALS="
KEY_PATH
"KEY_PATH
をサービス アカウント キーが含まれる JSON ファイルのパスに置き換えます。例:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"
Windows
PowerShell の場合:
$env:GOOGLE_APPLICATION_CREDENTIALS="
KEY_PATH
"KEY_PATH
をサービス アカウント キーが含まれる JSON ファイルのパスに置き換えます。例:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\service-account-file.json"
コマンド プロンプトの場合:
set GOOGLE_APPLICATION_CREDENTIALS=
KEY_PATH
KEY_PATH
をサービス アカウント キーが含まれる JSON ファイルのパスに置き換えます。 - クライアント ライブラリをインストールします。
C#
詳細については、C# 開発環境の設定をご覧ください。Install-Package Google.Cloud.RecaptchaEnterprise.V1
Go
詳細については、Go 開発環境の設定をご覧ください。go get cloud.google.com/go/recaptchaenterprise/apiv1
Java
詳細については、Java 開発環境の設定をご覧ください。Maven を使用している場合は、次のものを
pom.xml
ファイルに追加します。BOM の詳細については、Google Cloud Platform ライブラリ BOM をご覧ください。Gradle を使用している場合は、次のものを依存関係に追加します。
sbt を使用している場合は、次のものを依存関係に追加します。
Visual Studio Code、IntelliJ または Eclipse を使用している場合は、次の IDE プラグインでプロジェクトにクライアント ライブラリを追加できます。
プラグインでは、サービス アカウントのキー管理などの追加機能も提供されます。詳細は各プラグインのドキュメントをご覧ください。
Node.js
詳細については、Node.js 開発環境の設定をご覧ください。npm install --save @google-cloud/recaptcha-enterprise
PHP
詳細については、Google Cloud での PHP の使用をご覧ください。ライブラリを依存関係としてcomposer.json
ファイルに追加します。composer require google/cloud-recaptcha-enterprise
または、パッケージをローカルにダウンロードすることもできます。Python
詳細については、Python 開発環境の設定をご覧ください。pip install --upgrade google-cloud-recaptcha-enterprise
Ruby
詳細については、Ruby 開発環境の設定をご覧ください。gem install google-cloud-recaptcha_enterprise
作成したサービス アカウントでバックエンド認証を行う準備が整いました。評価の作成時に、reCAPTCHA Enterprise クライアント ライブラリを使用してサービス アカウントを認証できます。
gcloud CLI
- Google Cloud CLI をインストールして初期化します。
-
環境変数
GOOGLE_APPLICATION_CREDENTIALS
を設定して、アプリケーション コードに認証情報を指定します。この変数は、現在のシェル セッションにのみ適用されます。この変数を新しいシェル セッションに適用する場合は、シェル起動ファイル(~/.bashrc
ファイルや~/.profile
ファイルなど)で変数を設定します。Linux または macOS
export GOOGLE_APPLICATION_CREDENTIALS="
KEY_PATH
"KEY_PATH
をサービス アカウント キーが含まれる JSON ファイルのパスに置き換えます。例:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"
Windows
PowerShell の場合:
$env:GOOGLE_APPLICATION_CREDENTIALS="
KEY_PATH
"KEY_PATH
をサービス アカウント キーが含まれる JSON ファイルのパスに置き換えます。例:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\service-account-file.json"
コマンド プロンプトの場合:
set GOOGLE_APPLICATION_CREDENTIALS=
KEY_PATH
KEY_PATH
をサービス アカウント キーが含まれる JSON ファイルのパスに置き換えます。
作成したサービス アカウントでバックエンド認証を行う準備が整いました。評価を作成するときは、gcloud CLI を使用してサービス アカウントを認証できます。
次のステップ
- 使用する reCAPTCHA(サイト)キー タイプを決定し、reCAPTCHA キーを作成する。
スコアベースまたはチェックボックスのサイトキーをウェブページにインストールする。
OR
reCAPTCHA Enterprise を Android アプリまたは iOS アプリに統合する。
評価を解釈し、スコアに基づいてサイトに対して適切な措置を講じる。