O Compute Engine pode obter contentores diretamente dos repositórios do Artifact Registry.
Autorizações necessárias
A conta de serviço do Compute Engine precisa de acesso ao Artifact Registry para extrair imagens de contentores.
Consoante a configuração da política da organização, a conta de serviço predefinida pode receber automaticamente a função de editor no seu projeto. Recomendamos vivamente que desative a concessão automática de funções
aplicando a restrição da política da organização iam.automaticIamGrantsForDefaultServiceAccounts
. Se tiver criado a sua organização após 3 de maio de 2024, esta restrição é aplicada por predefinição.
Se desativar a concessão automática de funções, tem de decidir que funções conceder às contas de serviço predefinidas e, em seguida, conceder estas funções.
Se a conta de serviço predefinida já tiver a função de editor, recomendamos que substitua a função de editor por funções menos permissivas.
Seguem-se alguns exemplos de âmbitos de acesso e funções necessários para diferentes cenários:
- Para extrair imagens de contentores de repositórios do Artifact Registry, tem de conceder à conta de serviço do Compute Engine a função de leitor do Artifact Registry (
roles/artifactregistry.reader
). Além disso, certifique-se de que o âmbito de acessoread-only
está definido para contentores de armazenamento do Cloud Storage. - Quer que a instância de VM faça o carregamento para repositórios. Neste caso, tem de configurar um âmbito de acesso com acesso de escrita ao armazenamento:
read-write
,cloud-platform
oufull-control
. - A instância de VM está num projeto diferente dos repositórios aos quais quer aceder. No projeto com os repositórios, conceda as autorizações necessárias à conta de serviço da instância.
- Os repositórios estão no mesmo projeto, mas não quer que a conta de serviço predefinida tenha o mesmo nível de acesso em todos os repositórios. Neste caso, tem de conceder as autorizações adequadas ao nível do repositório e revogar as autorizações do Artifact Registry ao nível do projeto.
- A VM está associada a uma conta de serviço personalizada. Certifique-se de que a conta de serviço tem as autorizações e o âmbito de acesso necessários.
- Está a usar funções personalizadas para conceder autorizações e a função personalizada não inclui as autorizações do Artifact Registry necessárias. Adicione as autorizações necessárias à função.