Compute Engine può estrarre i container direttamente dai repository di Artifact Registry.
Autorizzazioni obbligatorie
L'account di servizio Compute Engine deve avere accesso ad Artifact Registry per estrarre le immagini dei contenitori.
A seconda della configurazione delle norme dell'organizzazione, all'account di servizio predefinito potrebbe essere assegnato automaticamente il ruolo Editor nel progetto. Ti consigliamo vivamente di disattivare la concessione automatica dei ruoli
applicando il vincolo iam.automaticIamGrantsForDefaultServiceAccounts
delle norme dell'organizzazione. Se hai creato la tua organizzazione dopo il 3 maggio 2024, questo vincolo viene applicato per impostazione predefinita.
Se disattivi la concessione automatica dei ruoli, devi decidere quali ruoli concedere agli account di servizio predefiniti, quindi concedere personalmente questi ruoli.
Se l'account di servizio predefinito dispone già del ruolo Editor, ti consigliamo di sostituire il ruolo Editor con ruoli meno permissivi.Per modificare in sicurezza i ruoli dell'account di servizio, utilizza Policy Simulator per vedere l'impatto della modifica, quindi concedi e revoca i ruoli appropriati.
Di seguito sono riportati alcuni esempi di ambiti di accesso e ruoli obbligatori per diversi scenari:
- Per estrarre le immagini container dai repository di Artifact Registry, devi assegnare all'account di servizio Compute Engine il ruolo di lettore di Artifact Registry (
roles/artifactregistry.reader
). Inoltre, assicurati che l'ambito di accessoroles/artifactregistry.reader
sia impostato per i bucket di archiviazione Cloud Storage.read-only
- Vuoi che l'istanza VM venga caricata nei repository. In questo caso, devi configurare un ambito di accesso con accesso in scrittura allo spazio di archiviazione:
read-write
,cloud-platform
ofull-control
. - L'istanza VM si trova in un progetto diverso da quello dei repository a cui vuoi accedere. Nel progetto con i repository, concedi le autorizzazioni richieste all'account di servizio dell'istanza.
- I repository si trovano nello stesso progetto, ma non vuoi che l'account di servizio predefinito abbia lo stesso livello di accesso in tutti i repository. In questo caso, devi concedere le autorizzazioni appropriate a livello di repository e revocare le autorizzazioni di Artifact Registry a livello di progetto.
- La VM è associata a un account di servizio personalizzato. Assicurati che il service account disponga delle autorizzazioni e dell'ambito di accesso richiesti.
- Utilizzi i ruoli personalizzati per concedere le autorizzazioni e il ruolo personalizzato non include le autorizzazioni richieste per Artifact Registry. Aggiungi le autorizzazioni richieste al ruolo.