O Compute Engine pode extrair contêineres diretamente dos repositórios do Artifact Registry.
Permissões necessárias
A conta de serviço do Compute Engine precisa ter acesso ao Artifact Registry para extrair imagens de contêineres.
Dependendo da configuração da política da organização, a conta de serviço padrão pode
receber automaticamente o papel de Editor no
projeto. É altamente recomendável desativar a concessão automática de papéis
aplicando a restrição
da política da organização iam.automaticIamGrantsForDefaultServiceAccounts
. Se você criou a organização após 3 de maio de 2024, essa
restrição será aplicada por padrão.
Se você desativar a concessão automática de papéis, precisará decidir quais papéis conceder às contas de serviço padrão e, em seguida, conceder esses papéis por conta própria.
Se a conta de serviço padrão já tiver o papel de Editor, recomendamos que você o substitua por papéis menos permissivos.Para modificar com segurança os papéis da conta de serviço, use o Simulador de política para conferir o impacto da mudança e, em seguida, conceda e revogue os papéis apropriados.
Confira alguns exemplos de escopos de acesso e papéis obrigatórios para diferentes cenários:
- Para extrair imagens de contêiner dos repositórios do Artifact Registry, é necessário
conceder à conta de serviço do Compute Engine o papel de leitor do Artifact Registry (
roles/artifactregistry.reader
). Além disso, verifique se o escopo de acessoread-only
está definido para os buckets do Cloud Storage. - Você quer que a instância de VM seja carregada em repositórios. Nesse caso, é preciso
configurar um escopo de acesso
com acesso de gravação ao armazenamento:
read-write
,cloud-platform
oufull-control
. - A instância de VM está em um projeto diferente dos repositórios que você quer acessar. No projeto com os repositórios, conceda as permissões necessárias à conta de serviço da instância.
- Os repositórios estão no mesmo projeto, mas você não quer que a conta de serviço padrão tenha o mesmo nível de acesso em todos os repositórios. Nesse caso, você precisa conceder as permissões apropriadas no nível do repositório e revogar as permissões do Artifact Registry no nível do projeto.
- A VM está associada a uma conta de serviço personalizada. Verifique se a conta de serviço tem as permissões necessárias e o escopo de acesso.
- Você está usando papéis personalizados para conceder permissões e eles não incluem as permissões obrigatórias do Artifact Registry. Adicione as permissões obrigatórias ao papel.