VPC Service Controls 境界の外部から保護されたリソースへの公開エンドポイント アクセスを許可する

このページでは、上り(内向き)ルールと下り(外向き)ルールを使用して、VPC ネットワークの内部 IP アドレスからサービス境界へのトラフィックを許可する方法について説明します。

リファレンス アーキテクチャ

次のリファレンス アーキテクチャでは、サービス プロジェクト ph-fm-svc-project(基盤モデル サービス プロジェクト)に Gemini モデルを使用して共有 VPC がデプロイされています。このサービス プロジェクトには、Vertex AI の生成 AI 用の Vertex AI API への既知の一般公開アクセスを許可する次のサービス ポリシー属性があります。

  • 単一の VPC Service Controls 境界
  • アクセスレベル - 既知の外部パブリック エンドポイントの CIDR 範囲
  • プロジェクト定義のユーザー ID

VPC Service Controls を使用してサービス境界を作成するアーキテクチャ図。

アクセスレベルを作成する

Access Context Manager を使用すると、 Google Cloud 組織管理者は、Google Cloudのプロジェクトとリソースに対してきめ細かい属性ベースのアクセス制御を定義できます。管理者はまずアクセス ポリシーを定義します。これは、アクセスレベルとサービス境界用の組織全体のコンテナです。

アクセスレベルは、リクエストに対応するための要件を示します。例:

  • デバイスの種類とオペレーティング システム(Chrome Enterprise Premium ライセンスが必要)
  • IP アドレス
  • ユーザー ID

このリファレンス アーキテクチャでは、パブリック IP サブネットワーク アクセスレベルを使用して VPC Service Controls アクセス ポリシーを作成します。

  1. Google Cloud コンソールの上部にあるプロジェクト セレクタで、[すべて] タブをクリックし、組織を選択します。

  2. ベーシック アクセスレベルを作成するページの手順に沿って、ベーシック アクセスレベルを作成します。次のオプションを指定します。

    1. [条件の作成] で、[基本モード] を選択します。
    2. [アクセスレベルのタイトル] フィールドに、「corp-public-block」と入力します。
    3. [条件] セクションの [条件が満たされたときに返す] オプションで、[TRUE] を選択します。
    4. [IP サブネットワーク] で [パブリック IP] を選択します。
    5. IP アドレス範囲には、VPC Service Controls の境界へのアクセスが必要な外部 CIDR 範囲を指定します。

VPC Service Controls のサービス境界を作成する

サービス境界を作成する際は、保護されたプロジェクトに加えて VPC Service Controls の境界を作成するときにアクセスレベル(IP アドレス)を指定して、境界外から保護されたサービスへのアクセスを許可します。共有 VPC で VPC Service Controls を使用する場合は、ホスト プロジェクトとサービス プロジェクトを含む 1 つの大きな境界を作成することをおすすめします。境界でサービス プロジェクトのみを選択すると、サブネットがホスト プロジェクトに関連付けられているため、サービス プロジェクトに属するネットワーク エンドポイントが境界外にあるように見えます。

新しい境界の構成タイプを選択する

このセクションでは、ドライラン モードで VPC Service Controls サービス境界を作成します。ドライラン モードでは、境界が適用されているかのように違反をロギングしますが、制限されたサービスへのアクセスは阻止されません。自動適用モードに切り替える前にドライラン モードを使用することをおすすめします。

  1. Google Cloud コンソールのナビゲーション メニューで、[セキュリティ]、[VPC Service Controls] の順にクリックします。

    [VPC Service Controls] ページに移動

  2. プロンプトが表示されたら、組織、フォルダ、またはプロジェクトを選択します。

  3. [VPC Service Controls] ページで、[ドライラン モード] をクリックします。

  4. [新しい境界] をクリックします。

  5. [新しい VPC サービス境界] タブの [境界名] ボックスに、境界の名前を入力します。それ以外の場合は、デフォルト値をそのまま使用します。

    境界名の最大長は 50 文字で、先頭は英字にする必要があります。ASCII ラテン文字(a ~ z、A ~ Z)、数字(0 ~ 9)、アンダースコア(_)のみを使用できます。境界名は大文字と小文字が区別され、アクセス ポリシー内で一意である必要があります。

保護するリソースを選択する

  1. [保護するリソース] をクリックします。

  2. 境界内で保護するプロジェクトまたは VPC ネットワークを追加する手順は次のとおりです。

    1. [リソースの追加] をクリックします。

    2. 境界にプロジェクトを追加するには、[リソースの追加] ペインで [プロジェクトを追加] をクリックします。

      1. プロジェクトを選択するには、[プロジェクトを追加] ダイアログでプロジェクトのチェックボックスをオンにします。次のプロジェクトのチェックボックスをオンにします。

        • aiml-host-project
        • ph-fm-svc-project
      2. [Add selected resources] をクリックします。追加されたプロジェクトが [プロジェクト] セクションに表示されます。

制限付きサービスを選択する

このリファレンス アーキテクチャでは、制限付き API の範囲が制限され、Gemini に必要な API のみが有効になります。ただし、ベスト プラクティスとして、Google Cloud サービスからデータが漏洩するリスクを軽減するため、境界を作成するときにすべてのサービスを制限することをおすすめします。

境界内で保護するサービスを選択するには、次の操作を行います。

  1. [制限付きサービス] をクリックします。

  2. [制限付きサービス] ペインで [サービスを追加] をクリックします。

  3. [制限するサービスを指定] ダイアログで、[Vertex AI API] を選択します。

  4. [Vertex AI API を追加] をクリックします。

省略可: VPC のアクセス可能なサービスを選択する

VPC のアクセス可能なサービスの設定により、サービス境界内のネットワーク エンドポイントからアクセス可能なサービスのセットが制限されます。このリファレンス アーキテクチャでは、デフォルトの [すべてのサービス] 設定を維持します。

  1. [VPC のアクセス可能なサービス] をクリックします。

  2. [VPC のアクセス可能なサービス] ペインで [すべてのサービス] を選択します。

アクセスレベルを選択

境界の外部から保護されたリソースへのアクセスを許可するには、次の操作を行います。

  1. [アクセスレベル] をクリックします。

  2. [アクセスレベルを選択します] ボックスをクリックします。

    境界が作成された後にアクセスレベルを追加することもできます。

  3. corp-public-block アクセスレベルに対応するチェックボックスをオンにします。

上り(内向き)ポリシーと下り(外向き)ポリシー

このリファレンス アーキテクチャでは、[上り(内向き)ポリシー] ペインまたは [下り(外向き)ポリシー] ペインで設定を指定する必要はありません。

境界を作成する

上記の構成手順が完了したら、[境界を作成] をクリックして境界を作成します。

ドライラン モードで境界を検証する

このリファレンス アーキテクチャでは、サービス境界はドライラン モードで構成されているため、適用せずにアクセス ポリシーの効果をテストできます。つまり、ポリシーが有効になっている場合に環境に与える影響を、正当なトラフィックを中断するリスクなしで確認できます。

ドライラン モードで境界を検証したら、境界を自動適用モードに切り替えます。

ドライラン モードで境界を検証する方法については、VPC Service Controls のドライラン ロギングをご覧ください。