クイックスタート: Google Cloud 以外の環境で reCAPTCHA Enterprise を設定する

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

  1. Cloud Console で [reCAPTCHA Enterprise API] ページに移動します。

    [reCAPTCHA Enterprise API] に移動

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

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

  3. [有効にする] をクリックします。

gcloud

  1. gcloud セッションで Google Cloud プロジェクトを設定するには、gcloud config set project コマンドを実行します。PROJECT_ID は、実際の Google Cloud プロジェクト ID に置き換えます。
           gcloud config set project PROJECT_ID
           
  2. reCAPTCHA Enterprise API を有効にするには、gcloud services enable コマンドを実行します。
             gcloud services enable recaptchaenterprise.googleapis.com
           
  3. reCAPTCHA Enterprise API が有効になっていることを確認するには、gcloud services list コマンドを実行します。
             gcloud services list --enabled
           

    reCAPTCHA Enterprise API が、有効な API のリストに含まれていることを確認します。

バックエンド認証用のサービス アカウントの作成

Console

  1. Cloud Console で、[サービス アカウント] ページに移動します。

    [サービス アカウント] に移動

  2. reCAPTCHA Enterprise API を有効にしたプロジェクトを選択します。
  3. [サービス アカウントを作成] をクリックします。
  4. Cloud Console に表示するサービス アカウント名を入力します。

    Cloud Console は、この名前に基づいてサービス アカウント ID を生成します。 必要に応じて ID を編集します。後で ID を変更することはできません。

  5. (省略可)サービス アカウントの説明を入力します。
  6. [作成] をクリックします。
  7. [ロールを選択] プルダウン メニューから [reCAPTCHA Enterprise エージェント] を選択します。
  8. [完了] をクリックします。
  9. サービス アカウントのリストで、作成したサービス アカウントのメールアドレスをクリックします。
  10. [] をクリックします。
  11. [鍵を追加]、[新しい鍵を作成] の順に選択します。
  12. ダイアログで [JSON] を選択し、[作成] をクリックします。

    キーを含む JSON ファイルがパソコンにダウンロードされます。

  13. [閉じる] をクリックします。

gcloud

  1. サービス アカウントを作成します。NAME をサービス アカウントの名前に置き換えます。

    gcloud iam service-accounts create NAME
  2. サービス アカウントに 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"
         
  3. サービス アカウント キー ファイルを作成します。次の値を置き換えます。

    • 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

バックエンド認証用のサービス アカウントの構成

バックエンド認証用に作成した新しいサービス アカウントは、reCAPTCHA Enterprise クライアント ライブラリか Google Cloud CLI を使用して構成できます。

クライアント ライブラリ

  1. 環境変数 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 ファイルのパスに置き換えます。

  2. クライアント ライブラリをインストールします。

    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 をご覧ください。

    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>com.google.cloud</groupId>
          <artifactId>libraries-bom</artifactId>
          <version>26.0.0</version>
          <type>pom</type>
          <scope>import</scope>
        </dependency>
      </dependencies>
    </dependencyManagement>
    
    <dependencies>
      <dependency>
        <groupId>com.google.cloud</groupId>
        <artifactId>google-cloud-recaptchaenterprise</artifactId>
      </dependency>
    </dependencies>
    

    Gradle を使用している場合は、次のものを依存関係に追加します。

    implementation platform('com.google.cloud:libraries-bom:26.0.0')
    
    implementation 'com.google.cloud:google-cloud-recaptchaenterprise'

    sbt を使用している場合は、次のものを依存関係に追加します。

    libraryDependencies += "com.google.cloud" % "google-cloud-recaptchaenterprise" % "3.0.4"

    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

  1. Google Cloud CLI をインストールして初期化します。
  2. 環境変数 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 を使用してサービス アカウントを認証できます。

次のステップ

  1. 使用する reCAPTCHA(サイト)キー タイプを決定し、reCAPTCHA キーを作成する。
  2. スコアベースまたはチェックボックスのサイトキーをウェブページにインストールする。

    OR

    reCAPTCHA Enterprise を Android アプリまたは iOS アプリに統合する。

  3. 評価の作成

  4. 評価を解釈し、スコアに基づいてサイトに対して適切な措置を講じる。