VPC Service Controls によるセキュリティの強化

Google Cloud Search は VPC Service Controls を サポートしてデータのセキュリティを強化しますVPC Service Controls を使用すると、Google Cloud Platform リソースのサービス境界を定義して、データを制約し、データ漏洩のリスクを軽減できます。

前提条件

始める前に、gcloud コマンドライン インターフェースをインストールします。

VPC Service Controls を有効にする

VPC Service Controls を有効にするには:

  1. 使用する Google Cloud Platform プロジェクトのプロジェクト ID とプロジェクト番号を取得します。プロジェクト ID と番号を取得するには、プロジェクトの識別をご覧ください。

  2. gcloud を使用して、Google Cloud Platform 組織のアクセス ポリシーを作成します。

    1. 組織 ID を取得します
    2. アクセス ポリシーを作成する
    3. アクセス ポリシーの名前を取得する
  3. 次の gcloud コマンドを実行して、Cloud Search を制限付きサービスとしてサービス境界を作成します。

    gcloud access-context-manager perimeters create NAME \
        --title=TITLE \
        --resources=PROJECTS \
        --restricted-services=RESTRICTED-SERVICES \
        --policy=POLICY_NAME
    

    ここで

    • NAME は、境界の名前です。
    • TITLE は、人間が読める境界のタイトルです。
    • PROJECTS は、1 つ以上のプロジェクト番号のカンマ区切りのリストで、各プロジェクト番号の前に projects/ という文字列が付加されます。手順 1 で取得したプロジェクト番号を使用します。たとえば、プロジェクト 1234567890 の 2 つのプロジェクトがある場合、設定は --resource=projects/12345, project/67890 になります。このフラグはプロジェクト番号のみをサポートし、名前や ID はサポートされません。
    • RESTRICTED-SERVICES は、1 つ以上のサービスのカンマ区切りのリストです。cloudsearch.googleapis.com を使用します。
    • POLICY_NAME は、手順 2c で取得した組織のアクセス ポリシーの名前です。

    サービス境界の作成方法については、サービス境界の作成をご覧ください。

  4. (省略可)IP またはリージョンベースの制限を適用する場合は、アクセスレベルを作成して、手順 3 で作成したサービス境界に追加します。

    1. アクセスレベルを作成するには、基本アクセスレベルの作成をご覧ください。企業ネットワーク内の IP アドレスなど、特定の範囲の IP アドレスからのアクセスのみを許可するアクセスレベル条件を作成する例については、企業ネットワーク上のアクセスを制限するをご覧ください。
    2. アクセスレベルを作成したら、サービス境界に追加します。サービス境界にアクセスレベルを追加する手順については、既存の境界にアクセスレベルを追加するをご覧ください。この変更が反映されて有効になるまでに 30 分ほどかかることがあります。
  5. Cloud Search Customer Service REST API を使用して、VPC Service Controls の境界で保護されたプロジェクトでお客様の設定を更新します。

  1. Google 承認サーバーから OAuth 2.0 アクセス トークンを取得します。トークンの取得については、OAuth 2.0 を使用した Google API へのアクセスのステップ 2 をご覧ください。アクセス トークンを取得するときに、https://www.googleapis.com/auth/cloud_search.settings.indexinghttps://www.googleapis.com/auth/cloud_search.settingshttps://www.googleapis.com/auth/cloud_search のいずれかの OAuth スコープを使用します。

  2. 次の curl コマンドを実行して、Google Cloud Search の [顧客の設定] にある VPC Service Controls の設定でプロジェクトを設定します。

    curl --request PATCH \
      'https://cloudsearch.googleapis.com/v1/settings/customer' \
      --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/json' \
      --data '{ "vpc_settings": { "project": "projects/PROJECT_ID" } }' \
      --compressed
    

    ここで

  • YOUR_ACCESS_TOKEN は、手順 5a で取得した OAuth 2.0 アクセス トークンです。
  • PROJECT_ID は、手順 1 で取得したプロジェクト ID です。

    成功すると、更新された顧客設定を含む 200 OK レスポンスが返されます。

上記の手順が正常に完了すると、サービス境界で定義されている VPC Service Controls の制限がすべての Google Cloud Search API、cloudsearch.google.com での検索、管理コンソールを使用した構成やレポートの表示と変更に適用されます。アクセスレベルに準拠していない Google Cloud Search API へのリクエストは、PERMISSION_DENIED “Request is prohibited by organization’s policy” エラーになります。