Nesta página, mostramos como usar grupos de identidade e identidades de terceiros em regras de entrada e saída.
Ela inclui o seguinte exemplo de uso de grupos de identidade em regras de entrada e saída:
- Permitir o acesso do Cloud Run aos membros de um grupo de identidades pela internet e a contas de serviço específicas a partir de um intervalo de endereços IP na lista de permissões.
Permitir que o Cloud Run acesse membros de um grupo de identidades e contas de serviço específicas
O diagrama a seguir mostra um usuário de um grupo de identidade específico e do intervalo de endereços IP na lista de permissões acessando o Cloud Run dentro de um perímetro de serviço:
Suponha que você tenha definido o seguinte perímetro de serviço:
name: accessPolicies/222/servicePerimeters/Example
status:
resources:
- projects/111
restrictedServices:
- run.googleapis.com
- artifactregistry.googleapis.com
vpcAccessibleServices:
enableRestriction: true
allowedServices:
- RESTRICTED_SERVICES
title: Example
Para conferir os detalhes de perímetro de serviço na sua organização, descreva o perímetro de serviço usando o comando da gcloud CLI.
Neste exemplo, também presumimos que você definiu os seguintes recursos:
- Um grupo de identidades chamado
allowed-users@example.comcom usuários a quem você quer dar acesso ao Cloud Run dentro do perímetro. - Um nível de acesso chamado
CorpDatacentersna mesma política de acesso que o perímetro de serviço.CorpDatacentersinclui um intervalo de endereços IP na lista de permissões dos data centers corporativos que são as fontes das solicitações das contas de serviço.
A política de entrada a seguir, ingress.yaml, permite que o Cloud Run
acesse contas humanas específicas, que fazem parte do
grupo allowed-users@example.com, e determinadas contas de serviço, que são
limitadas ao intervalo de endereços IP da lista de permissões:
- 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:
- "*"
Para aplicar a regra de entrada, execute o seguinte comando:
gcloud access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml