Identidades compatíveis com regras de entrada e saída

O VPC Service Controls usa regras de entrada e saída para controlar o acesso de e para recursos e clientes dentro dos perímetros de serviço. Para refinar ainda mais o acesso, especifique as identidades compatíveis nas regras de entrada e saída.

Esta página lista as identidades compatíveis com o VPC Service Controls e os formatos de identificador delas.

Identidades compatíveis

O VPC Service Controls é compatível com as seguintes identidades dos identificadores principais para políticas de permissão, que usam a API v1 do IAM:

Tipo de identidade Tipo principal Identificador
Principais únicos Contas de usuário user:USER_EMAIL_ADDRESS
Contas de serviço serviceAccount:SA_EMAIL_ADDRESS
Grupos de identidade e identidades de terceiros Grupo group:GROUP_EMAIL_ADDRESS
Identidade excluída em um pool de identidade da força de trabalho principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE
Todas as identidades da força de trabalho em um grupo principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/group/GROUP_ID
Todas as identidades da força de trabalho com um valor de atributo específico principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE
Todas as identidades em um pool de Identidades de força de trabalho: principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/*
Identidade única em um pool de Identidade da carga de trabalho principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE
Grupo de pools de Identidades da carga de trabalho principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/group/GROUP_ID
Todas as identidades em um pool de Identidade da carga de trabalho com um determinado atributo principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE
Todas as identidades em um pool de Identidade da carga de trabalho principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/*
Federação de Identidade da Carga de Trabalho para GKE
(visualização)
Todos os pods do GKE que usam uma conta de serviço do Kubernetes por nome principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/PROJECT_ID.svc.id.goog/subject/ns/NAMESPACE/sa/KUBERNETES_SERVICE_ACCOUNT
Todos os pods do GKE que usam uma conta de serviço do Kubernetes por ID principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/PROJECT_ID.svc.id.goog/kubernetes.serviceaccount.uid/SERVICEACCOUNT_ID
Todos os pods do GKE em um namespace do Kubernetes, independentemente da conta de serviço ou do cluster principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/PROJECT_ID.svc.id.goog/namespace/NAMESPACE
Todos os pods do GKE em um cluster principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/PROJECT_ID.svc.id.goog/kubernetes.cluster/https://container.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/clusters/CLUSTER_NAME
Identidades do agente Identidade do agente principal://TRUST_DOMAIN/AGENT_UNIQUE_IDENTIFIER
Todas as identidades de agente em um domínio de confiança com um determinado atributo principalSet://TRUST_DOMAIN/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE
Todas as identidades de agente em um domínio de confiança principalSet://TRUST_DOMAIN/*

Para mais informações sobre essas identidades, consulte Identificadores principais para políticas de permissão.

O VPC Service Controls também oferece suporte aos seguintes SPIFFE formatos para identidades de carga de trabalho e de força de trabalho de terceiros:

Tipo de identidade Tipo principal Identificador
Identidades da força de trabalho no formato SPIFFE Identidade única em um pool de identidades de força de trabalho principal://POOL_ID.global.workforce.id.goog/SUBJECT_ATTRIBUTE_VALUE
Todas as identidades em um pool de identidades da força de trabalho como um domínio de confiança com um determinado atributo principalSet://POOL_ID.global.workforce.id.goog/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE
Todas as identidades em um pool de identidades da força de trabalho como um domínio de confiança principalSet://POOL_ID.global.workforce.id.goog/*
Identidades da carga de trabalho no formato SPIFFE Identidade única em um pool de Identidade da carga de trabalho principal://POOL_ID.global.ORGANIZATION_ID.workload.id.goog/SUBJECT_ATTRIBUTE_VALUE
Todas as identidades em um pool de Identidade da carga de trabalho como um domínio de confiança com um determinado atributo principalSet://POOL_ID.global.ORGANIZATION_ID.workload.id.goog/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE
Todas as identidades em um pool de Identidade da carga de trabalho como um domínio de confiança principalSet://POOL_ID.global.ORGANIZATION_ID.workload.id.goog/*

Considerações sobre a Federação de Identidade da Carga de Trabalho para GKE

  • Um limite de 1.000 principais da Federação de Identidade da Carga de Trabalho para GKE por política de acesso é aplicado. Para mais informações, consulte Cotas e limites.
  • Os principais da Federação de Identidade da Carga de Trabalho para GKE não oferecem suporte a sintaxe principal excluída.
  • É possível especificar os principais da Federação de Identidade da Carga de Trabalho para GKE usando o formato completo do identificador principal do IAM (por exemplo, principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/PROJECT_ID.svc.id.goog/subject/ns/NAMESPACE/sa/KUBERNETES_SERVICE_ACCOUNT) ou o formato SPIFFE equivalente (por exemplo, principal://PROJECT_ID.svc.id.goog/ns/NAMESPACE/sa/KUBERNETES_SERVICE_ACCOUNT). Ao descrever ou recuperar um perímetro de serviço que contém regras criadas com a sintaxe SPIFFE, o VPC Service Controls retorna a identidade no formato SPIFFE.

Principais do IAM excluídos

Para ajudar a gerenciar perímetros de serviço que referenciam contas excluídas, o VPC Service Controls permite ativar o suporte para identificadores principais do IAM excluídos. Por padrão, tentar atualizar ou listar perímetros que contêm principais excluídos falha com um The email address is invalid or non-existent erro. Para mais informações, consulte Solução de problemas comuns.

Para recuperar ou atualizar perímetros que contêm principais excluídos, use a API Access Context Manager. Defina o parâmetro deletedPrincipalSyntax (REST) ou o campo deleted_principal_syntax (gRPC) como DELETED_PRINCIPAL_SYNTAX_SUPPORT_ENABLED em uma solicitação, como os métodos get, list ou patch.

Para mais informações, consulte as páginas de referência REST ou gRPC.

Por exemplo, é possível usar o seguinte comando curl para receber um perímetro:

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"

Para uma lista de tipos principais do IAM que oferecem suporte à sintaxe excluída, consulte Identificadores principais para políticas de permissão.

Limitações

As limitações a seguir se aplicam aos principais do IAM excluídos nos perímetros do VPC Service Controls:

  • O VPC Service Controls oferece suporte apenas aos principais do IAM excluídos que usam a API v1 do IAM. Ele não oferece suporte a principais excluídos que usam as APIs v2 ou v3 do IAM.
  • Os principais do IAM excluídos nos níveis de acesso não são compatíveis.
  • Os principais que não oferecem suporte à sintaxe do prefixo deleted: no IAM também não são compatíveis com as regras de perímetro de serviço do VPC Service Controls.
  • É possível especificar no máximo 500 identidades excluídas em uma política de acesso.

A seguir