ブリッジを使用して境界を越えて共有する

このページでは、境界ブリッジを使用して異なるサービス境界のプロジェクトとサービスが通信を行う方法について説明します。

始める前に

サービス境界ブリッジ

1 つのプロジェクトに設定できるサービス境界は 1 つだけですが、別の境界にあるプロジェクトとの通信が必要になる場合もあります。この場合、境界ブリッジを作成すると、サービス境界を越えてサービスとの通信やデータの共有を行うことができます。

異なるセキュリティ境界のプロジェクト間で通信を可能にする境界ブリッジ。境界ブリッジは双方向です。各サービス境界のプロジェクトは、ブリッジのスコープ内で同等にアクセスできます。ただし、プロジェクトのアクセスレベルとサービス制限は、プロジェクトが属するサービス境界によって制御されます。1 つのプロジェクトに他のプロジェクトと接続する複数のブリッジを設定できます。

あるサービス境界に属するプロジェクトから別の境界に属するプロジェクトに間接的にアクセスすることはできません。たとえば、A、B、C という 3 つのプロジェクトがあるとします。各プロジェクトは異なるサービス境界に属しています。A と B は境界ブリッジを共有し、B と C もブリッジを共有しています。 A と B の間または B と C の間ではデータの移動が許可されますが、A と C の間では許可されません。これは、この 2 つのプロジェクトが境界ブリッジで直接接続されていないためです。

サービス境界に属していないプロジェクトは、境界ブリッジで別のプロジェクトに接続できません。

境界ブリッジに異なる組織のプロジェクトを入れることはできません。境界ブリッジで接続されるプロジェクトは、同じ組織のサービス境界に属している必要があります。

境界ブリッジの例

次の設定を例にして、境界ブリッジの仕組みを簡単に見てみましょう。

境界ブリッジのアクセス図

ここでは、DMZ 境界の Cloud Storage バケットと Sink Project のバケット間のコピーを許可していますが、DMZ 境界の VM には Private Project の Cloud Storage バケットにあるデータへのアクセスを許可していません。

次のコマンドは、プロジェクト A とプロジェクト B を接続する境界ブリッジ(Bridge)を作成します。

gcloud access-context-manager perimeters create Bridge \
  --title="Perimeter Bridge" --perimeter-type=bridge \
  --resources=projects/12345,projects/67890

この境界ブリッジの境界に方向性はありません。DMZ 境界からプライベート境界へのコピーと、プライベート境界から DMZ 境界へのコピーの両方が許可されます。ディレクショナルの制御を行う場合は、サービス アカウントの IAM 権限またはコピーのオペレーションを実行する ID と境界を組み合わせることをおすすめします。