このページでは、上り(内向き)ルールと下り(外向き)ルールで ID グループとサードパーティ ID を使用する方法について説明します。
このページでは、次のような目的で上り(内向き)ルールと下り(外向き)ルールで ID グループを使用する場合について説明します。
- Cloud Run がインターネット経由で ID グループのメンバーにアクセスし、許可リストに登録された IP アドレス範囲の特定のサービス アカウントにアクセスできるようにする。
Cloud Run に ID グループのメンバーと特定のサービス アカウントへのアクセスを許可する
次の図では、特定の ID グループのユーザーと許可リストに登録された IP アドレス範囲のユーザーが、サービス境界内の Cloud Run にアクセスしています。
次のようにサービス境界を定義したとします。
name: accessPolicies/222/servicePerimeters/Example
status:
resources:
- projects/111
restrictedServices:
- run.googleapis.com
- artifactregistry.googleapis.com
vpcAccessibleServices:
enableRestriction: true
allowedServices:
- RESTRICTED_SERVICES
title: Example
組織内の既存のサービス境界の詳細を確認するには、gcloud CLI コマンドを使用して、サービス境界の説明を取得します。
また、この例では次のリソースが定義されていることを前提としています。
allowed-users@example.comという ID グループ。このグループには、境界内の Cloud Run へのアクセスを許可するユーザーが含まれています。- サービス境界と同じアクセス ポリシーにある
CorpDatacentersというアクセスレベル。CorpDatacentersには、許可リストに登録された会社のデータセンターの IP アドレス範囲が含まれています。この範囲は、サービス アカウントからのリクエストの送信元となる可能性があります。
次の上り(内向き)ポリシー ingress.yaml は、allowed-users@example.com グループに属する特定のユーザー アカウントと、許可リストに登録された IP アドレス範囲に限定された特定のサービス アカウントに Cloud Run へのアクセスを許可しています。
- ingressFrom:
identities:
- serviceAccount:my-sa@my-project.iam.gserviceaccount.com
sources:
- accessLevel: accessPolicies/222/accessLevels/CorpDatacenters
ingressTo:
operations:
- serviceName: run.googleapis.com
methodSelectors:
- method: "*"
resources:
- "*"
- ingressFrom:
identities:
- group:allowed-users@example.com
sources:
- accessLevel: "*"
ingressTo:
operations:
- serviceName: run.googleapis.com
methodSelectors:
- method: "*"
resources:
- "*"
上り(内向き)ルールを適用するには、次のコマンドを実行します。
gcloud access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml