VPC Service Controls は、上り(内向き)ルールと下り(外向き)ルール を使用して、サービス境界内のリソースとクライアントへのアクセスを制御します。アクセスをさらに絞り込むには、上り(内向き)ルールと下り(外向き)ルールでサポートされている ID を指定します。
このページでは、VPC Service Controls でサポートされている ID とその識別子の形式について説明します。
サポートされている ID
VPC Service Controls は、許可ポリシーの
プリンシパル ID から次の ID をサポートしています。これは IAM
v1 API を使用します。
| ID タイプ | プリンシパル タイプ | 識別子 |
|---|---|---|
| 単一のプリンシパル | ユーザー アカウント | user:USER_EMAIL_ADDRESS |
| サービス アカウント | serviceAccount:SA_EMAIL_ADDRESS |
|
| ID グループとサードパーティ ID | グループ | group:GROUP_EMAIL_ADDRESS |
| Workforce Identity プール内の単一の ID | principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE |
|
| グループ内のすべての Workforce ID | principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/group/GROUP_ID |
|
| 特定の属性値を持つすべての Workforce ID | principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE |
|
| Workforce Identity プール内のすべての ID | principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/* |
|
| Workload Identity プール内の単一の ID | principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE |
|
| Workload Identity プールグループ | principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/group/GROUP_ID |
|
| 特定の属性を持つ Workload Identity プール内のすべての ID | principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE |
|
| Workload Identity プール内のすべての ID | principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/* |
|
| エージェント ID | エージェント ID | principal://TRUST_DOMAIN/AGENT_UNIQUE_IDENTIFIER |
| 特定の属性を持つ信頼ドメイン内のすべてのエージェント ID | principalSet://TRUST_DOMAIN/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE |
|
| 信頼ドメイン内のすべてのエージェント ID | principalSet://TRUST_DOMAIN/* |
これらの ID の詳細については、許可ポリシーの プリンシパル ID をご覧ください。
VPC Service Controls は、サードパーティの Workforce Identity と Workload Identity の次の SPIFFE 形式もサポートしています。
| ID タイプ | プリンシパル タイプ | 識別子 |
|---|---|---|
| SPIFFE 形式の Workforce Identity | Workforce Identity プール内の単一の ID | principal://POOL_ID.global.workforce.id.goog/SUBJECT_ATTRIBUTE_VALUE |
| 特定の属性を持つ信頼ドメインとしての Workforce Identity プール内のすべての ID | principalSet://POOL_ID.global.workforce.id.goog/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE |
|
| 信頼ドメインとしての Workforce Identity プール内のすべての ID | principalSet://POOL_ID.global.workforce.id.goog/* |
|
| SPIFFE 形式の Workload Identity | Workload Identity プール内の単一の ID | principal://POOL_ID.global.ORGANIZATION_ID.workload.id.goog/SUBJECT_ATTRIBUTE_VALUE |
| 特定の属性を持つ信頼ドメインとしての Workload Identity プール内のすべての ID | principalSet://POOL_ID.global.ORGANIZATION_ID.workload.id.goog/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE |
|
| 信頼ドメインとしての Workload Identity プール内のすべての ID | principalSet://POOL_ID.global.ORGANIZATION_ID.workload.id.goog/* |
削除された IAM プリンシパル
削除されたアカウントを参照するサービス境界を管理できるように、VPC Service Controls では、削除された IAM プリンシパル ID のサポートを有効にできます。デフォルトでは、削除されたプリンシパルを含む境界を更新または一覧表示しようとすると、
The email address is invalid or
non-existent エラーが発生します。詳細については、
一般的な問題のトラブルシューティングをご覧ください。
削除されたプリンシパルを含む境界を取得または更新するには、Access Context Manager API を使用します。get、list、patch などのリクエストで、deletedPrincipalSyntax パラメータ(REST)または deleted_principal_syntax フィールド(gRPC)を DELETED_PRINCIPAL_SYNTAX_SUPPORT_ENABLED に設定します。
詳細については、REST または gRPC のリファレンス ページをご覧ください。
たとえば、次の curl コマンドを使用して境界を取得できます。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/accessPolicies/\
POLICY_NAME/servicePerimeters/PERIMETER_NAME?\
deletedPrincipalSyntax=DELETED_PRINCIPAL_SYNTAX_SUPPORT_ENABLED"
削除された 構文をサポートする IAM プリンシパル タイプのリストについては、 許可ポリシーのプリンシパル IDをご覧ください。
制限事項
VPC Service Controls 境界の削除された IAM プリンシパルには、次の制限が適用されます。
- VPC Service Controls は、IAM
v1API を使用する削除された IAM プリンシパルのみをサポートします。IAMv2API またはv3API を使用する削除されたプリンシパルはサポートしていません。 - アクセスレベルで削除された IAM プリンシパルはサポートされていません。
- IAM で
deleted:接頭辞構文をサポートしていないプリンシパルは、VPC Service Controls サービス境界ルールでもサポートされていません。 - アクセス ポリシーで指定できる削除された ID は最大 500 個です。