Esta página descreve como usar grupos de identidades em regras de entrada e saída para permitir o acesso a recursos protegidos por perímetros de serviços.
Os VPC Service Controls usam regras de entrada e saída para permitir o acesso aos recursos e clientes protegidos por perímetros de serviço e a partir destes. Para refinar ainda mais o acesso, pode especificar grupos de identidades nas regras de entrada e saída.
Um grupo de identidades é uma forma conveniente de aplicar controlos de acesso a uma coleção de utilizadores e permite-lhe gerir identidades com políticas de acesso semelhantes.
Para configurar grupos de identidades nas regras de entrada ou saída, pode usar os seguintes grupos de identidades suportados no atributo identities
:
- Grupo Google
Identidades de terceiros, como utilizadores do grupo de trabalhadores e identidades de carga de trabalho.
Os VPC Service Controls não suportam a Workload Identity Federation para o GKE.
Para obter informações sobre como aplicar políticas de regras de entrada e saída, consulte o artigo Configurar políticas de entrada e saída.
Antes de começar
- Certifique-se de que lê as regras de entrada e saída.
Configure grupos de identidades nas regras de entrada
Consola
Quando atualiza uma política de entrada de um perímetro de serviço ou define uma política de entrada durante a criação do perímetro através da Google Cloud consola, pode configurar a regra de entrada para usar grupos de identidades.
Quando cria um perímetro ou edita um perímetro na Google Cloud consola, selecione Política de entrada.
Na secção De da sua política de entrada, selecione Selecionar identidades e grupos na lista Identidades.
Clique em Adicionar identidades.
No painel Adicionar identidades, especifique um grupo Google ou uma identidade de terceiros à qual quer conceder acesso aos recursos no perímetro. Para especificar um grupo de identidades, use o formato especificado em Grupos de identidades suportados.
Clique em Adicionar identidades.
Clique em Guardar.
Para obter informações sobre os outros atributos das regras de entrada, consulte o artigo Referência das regras de entrada.
gcloud
Pode configurar uma regra de entrada para usar grupos de identidades através de um ficheiro JSON ou um ficheiro YAML. A amostra seguinte usa o formato YAML:
- ingressFrom:
identities:
- PRINCIPAL_IDENTIFIER
sources:
- resource: RESOURCE
*OR*
- accessLevel: ACCESS_LEVEL
ingressTo:
operations:
- serviceName: SERVICE_NAME
methodSelectors:
- method: METHOD_NAME
resources:
- projects/PROJECT_NUMBER
Substitua o seguinte:
PRINCIPAL_IDENTIFIER
: especifique um grupo Google ou uma identidade de terceiros à qual quer conceder acesso aos recursos no perímetro. Para especificar um grupo de identidades, use o formato especificado em Grupos de identidades suportados.
Para obter informações sobre os outros atributos das regras de entrada, consulte o artigo Referência das regras de entrada.
Depois de atualizar uma regra de entrada existente para configurar grupos de identidade, tem de atualizar as políticas de regras do perímetro de serviço:
gcloud access-context-manager perimeters update PERIMETER_ID --set-ingress-policies=RULE_POLICY.yaml
Substitua o seguinte:
PERIMETER_ID
: o ID do perímetro de serviço que quer atualizar.RULE_POLICY
: o caminho do ficheiro da regra de entrada modificado.
Para mais informações, consulte o artigo Atualizar as políticas de entrada e saída para um perímetro de serviço.
Configure grupos de identidades em regras de saída
Consola
Quando atualiza uma política de saída de um perímetro de serviço ou define uma política de saída durante a criação do perímetro através da Google Cloud consola, pode configurar a regra de saída para usar grupos de identidades.
Quando cria um perímetro ou edita um perímetro na Google Cloud consola, selecione Política de saída.
Na secção De da política de saída, selecione Selecionar identidades e grupos na lista Identidades.
Clique em Adicionar identidades.
No painel Adicionar identidades, especifique um grupo Google ou uma identidade de terceiros que possa aceder aos recursos especificados fora do perímetro. Para especificar um grupo de identidades, use o formato especificado em Grupos de identidades suportados.
Clique em Adicionar identidades.
Clique em Guardar.
Para obter informações sobre os outros atributos das regras de saída, consulte o artigo Referência das regras de saída.
gcloud
Pode configurar uma regra de saída para usar grupos de identidades através de um ficheiro JSON ou um ficheiro YAML. A amostra seguinte usa o formato YAML:
- egressTo:
operations:
- serviceName: SERVICE_NAME
methodSelectors:
- method: METHOD_NAME
resources:
- projects/PROJECT_NUMBER
egressFrom:
identities:
- PRINCIPAL_IDENTIFIER
Substitua o seguinte:
PRINCIPAL_IDENTIFIER
: especifique um grupo Google ou uma identidade de terceiros que possa aceder aos recursos especificados fora do perímetro. Para especificar um grupo de identidades, use o formato especificado em Grupos de identidades suportados.
Para obter informações sobre os outros atributos das regras de saída, consulte o artigo Referência das regras de saída.
Depois de atualizar uma regra de saída existente para configurar grupos de identidades, tem de atualizar as políticas de regras do perímetro de serviço:
gcloud access-context-manager perimeters update PERIMETER_ID --set-egress-policies=RULE_POLICY.yaml
Substitua o seguinte:
PERIMETER_ID
: o ID do perímetro de serviço que quer atualizar.RULE_POLICY
: o caminho do ficheiro da regra de saída modificado.
Para mais informações, consulte o artigo Atualizar as políticas de entrada e saída para um perímetro de serviço.
Grupos de identidade suportados
Os VPC Service Controls suportam os seguintes grupos de identidades dos
identificadores principais da API v1
IAM:
Tipo de principal | Identificador |
---|---|
Grupo | group:GROUP_EMAIL_ADDRESS |
Identidade única num Workload Identity Pool | principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE |
Todas as identidades da força de trabalho num 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 num Workload Identity Pool | principalSet://iam.googleapis.com/locations/global/workforcePools/POOL_ID/* |
Identidade única num Workload Identity Pool | principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ATTRIBUTE_VALUE |
Grupo do Workload Identity Pool | principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/group/GROUP_ID |
Todas as identidades num Workload Identity Pool com um determinado atributo | principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/attribute.ATTRIBUTE_NAME/ATTRIBUTE_VALUE |
Todas as identidades num Workload Identity Pool | principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/* |
Para mais informações sobre estas identidades, consulte o artigo Identificadores principais para políticas de permissão.
Limitações
- Antes de usar grupos de identidade, compreenda as funcionalidades não suportadas nas regras de entrada e saída.
- Quando usa grupos de identidades numa regra de saída, não pode definir o campo
resources
no atributoegressTo
como"*"
. - Para obter informações sobre os limites das regras de entrada e saída, consulte o artigo Quotas e limites.