サービス境界の詳細と構成

このページでは、サービス境界について説明し、境界を構成する手順の概要も説明します。

サービス境界について

このセクションでは、サービス境界の機能の仕組みと、自動適用モードの境界とドライラン モードの境界の違いについて詳しく説明します。

サービス境界は、データの引き出しリスクを軽減するための、プロジェクト内の Google Cloud サービスを保護する組織レベルの方法です。サービス境界の利点の詳細については、VPC Service Controls の概要をご覧ください。

また、境界内でホストされている VPC ネットワーク内の VM など、境界内でアクセスできるサービスは、VPC のアクセス可能なサービス機能を使用して制限できます。

VPC Service Controls の境界は、自動適用モードとドライラン モードの 2 つのモードで構成できます。一般的に、自動適用モードの境界とドライラン モードの境界のどちらも、構成手順は同じです。重要な違いは、ドライラン モードの境界は保護されたサービスへのアクセスを防止するのではなく、境界が適用されているかのように違反を記録するだけであることです。このガイドでは、必要に応じて、自動適用モードのサービス境界とドライラン モードのサービス境界の違いを説明します。

自動適用モード

自動適用モードは、サービス境界のデフォルト モードです。サービス境界が適用されると、境界外部のポリシーに違反するリクエスト(境界外部からの保護されたサービスへのリクエストなど)が拒否されます。

サービスが自動適用モードの境界で保護されている場合:

  • このサービスは境界外にデータを送信できません。

    保護されたサービスは境界内で通常どおり機能しますが、境界外にリソースやデータを送信する操作を行うことができません。これにより、境界内のプロジェクトにアクセス可能な悪意ある内部者が、データを流出させることを防止できます。

  • 境界外からの保護されたサービスへのリクエストは、境界に割り当てられたアクセスレベルの条件が満たされている場合にのみ受け入れられます。

  • このサービスは境界ブリッジを使用して、他の境界内のプロジェクトにアクセス可能にすることができます。

ドライラン モード

ドライラン モードでは、境界ポリシーに違反するリクエストは拒否されず、ログに記録されるのみです。ドライランのサービス境界は、リソースへのアクセスを妨げることなく、境界構成のテストや、サービスの使用状況のモニタリングに使用されます。一般的なユースケースには次のものがあります。

  • 既存のサービス境界の変更による影響を判断する。

  • 新しいサービス境界の影響をプレビューする。

  • サービス境界の外部から発信される保護されたサービスへのリクエストをモニタリングする。たとえば、特定のサービスへのリクエストの送信元の確認や、組織内の予期しないサービスの使用の特定です。

  • 開発環境で、本番環境と同様の境界アーキテクチャを作成する。これにより、本番環境に変更を push する前に、サービス境界に起因する問題を確認して軽減できます。

詳しくは、ドライラン モードをご覧ください。

サービス境界の構成

VPC Service Controls は、Google Cloud Console、gcloud コマンドライン ツールAccess Context Manager API を使用して構成できます。

VPC Service Controls を構成するには:

  1. gcloud コマンドライン ツールまたは Access Context Manager API でサービス境界の作成を行う場合は、アクセス ポリシーを作成します。

  2. サービス境界で GCP リソースを保護します。

  3. VPC でアクセス可能なサービスを設定して、境界内でのサービスの使用方法の制限を追加します(省略可)。

  4. VPC ネットワークからのプライベート接続を設定します(省略可)。

  5. アクセスレベルを使用して、サービス境界の外部からのアクセスを許可します(省略可)。

  6. サービス境界ブリッジを使用して、境界間のリソース共有を設定します(オプション)。

アクセス ポリシーを作成する

アクセス ポリシーにより、組織に作成したサービス境界とアクセスレベルを収集します。1 つの組織に設定できるアクセス ポリシーは 1 つだけです。

Cloud Console の [VPC Service Controls] ページでサービス境界の作成と管理を行う場合、アクセス ポリシーを作成する必要はありません。

一方、gcloud コマンドライン ツールまたは Access Context Manager API でサービス境界の作成と構成を行う場合は、最初にアクセス ポリシーを作成する必要があります。

Access Context Manager とアクセス ポリシーの詳細については、Access Context Manager の概要をご覧ください。

サービス境界で GCP リソースを保護する

サービス境界は、組織内のプロジェクトで使用されるサービスを保護するために使用します。保護するプロジェクトとサービスを特定したら、1 つ以上のサービス境界を作成します

サービス境界の機能と、VPC Service Controls で保護できるサービスについては、VPC Service Controls の概要をご覧ください。

VPC Service Controls で保護する場合、一部のサービスには制限があります。サービス境界の設定後にプロジェクトで問題が発生した場合は、トラブルシューティングをご覧ください。

VPC のアクセス可能なサービスを設定する

境界で VPC のアクセス可能なサービスを有効にすると、境界内のネットワーク エンドポイントからのアクセスは、指定した一連のサービスに制限されます。

境界内のアクセスを特定の一連のサービスのみに限定する方法については、VPC のアクセス可能なサービスをご覧ください。

VPC ネットワークからのプライベート接続の設定

サービス境界によって保護されている VPC ネットワークにセキュリティ機能を追加する場合は、限定公開の Google アクセスの使用をおすすめします。これには、オンプレミス ネットワークからのプライベート接続が含まれます。

プライベート接続の構成については、Google API およびサービスへのプライベート接続を設定するをご覧ください。

Google Cloud リソースへのアクセスを VPC ネットワークからのプライベート アクセスのみに制限すると、Cloud Console や Cloud Monitoring コンソールなどのインターフェースを使用したアクセスが拒否されます。制限されたリソースを使用して、サービス境界または境界ブリッジを共有する VPC ネットワークから、gcloud コマンドライン ツールまたは API クライアントを引き続き使用できます。

アクセスレベルを使用してサービス境界の外部からのアクセスを許可する

アクセスレベルを使用すると、サービス境界で保護しているリソースへの外部からのリクエストを許可できます。

アクセスレベルを使用すると、VPC Service Controls で保護されているリソースへのアクセスを許可するパブリック IPv4 / IPv6 CIDR ブロック、個々のユーザー、サービス アカウントを指定できます。

VPC ネットワークからのプライベート接続を使用してリソースを制限している場合に、Cloud Console から保護されたサービスへのアクセスを許可するには、Cloud Console を使用するホストのパブリック IP アドレスが含まれた CIDR ブロックをアクセスレベルに追加します。IP アドレスに関係なく特定のユーザーに対して Cloud Console を再度有効にする場合は、そのユーザー アカウントをアクセスレベルにメンバーとして追加します。

アクセスレベルの使い方については、アクセスレベルの作成をご覧ください。

サービスの境界を越えてデータを共有する

1 つのプロジェクトに設定できるサービス境界は 1 つだけです。2 つの境界間の通信を許可する場合は、サービス境界ブリッジを作成します。

境界ブリッジを使用すると、異なるサービス境界のプロジェクト間で通信を行うことができます。1 つのプロジェクトに複数の境界ブリッジを設定できます。

境界ブリッジの詳細については、ブリッジで境界を共有するをご覧ください。