Ruoli e autorizzazioni IAM

Il controllo dell'accesso in Cloud Build è controllato utilizzando Identity and Access Management (IAM). IAM consente di creare e gestire le autorizzazioni per le risorse Google Cloud. Cloud Build fornisce un insieme specifico di ruoli IAM predefiniti in cui ogni ruolo contiene un set di autorizzazioni. Puoi utilizzare questi ruoli per concedere un accesso più granulare a risorse Google Cloud specifiche e impedire accessi indesiderati ad altre risorse. IAM ti consente di adottare il principio di sicurezza del privilegio minimo, in modo da concedere solo l'accesso necessario alle tue risorse.

Questa pagina descrive i ruoli e le autorizzazioni di Cloud Build.

Ruoli di Cloud Build predefiniti

Con IAM, ogni metodo API nell'API Cloud Build richiede che l'identità che effettua la richiesta API disponga delle autorizzazioni appropriate per utilizzare la risorsa. Le autorizzazioni vengono concesse impostando criteri che concedono i ruoli a un'entità (utente, gruppo o account di servizio). Puoi concedere più ruoli a un'entità sulla stessa risorsa.

La tabella seguente elenca i ruoli IAM di Cloud Build e le autorizzazioni che includono:

Ruolo Descrizione Autorizzazioni
Nome: roles/cloudbuild.builds.viewer
Titolo: Visualizzatore Cloud Build
Può visualizzare Cloud Build

risorse

cloudbuild.builds.get

cloudbuild.builds.list

remotebuildexecution.blobs.get

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.builds.editor
Titolo: Editor Cloud Build
Controllo completo di Cloud Build

risorse

cloudbuild.builds.create

cloudbuild.builds.get

cloudbuild.builds.list

cloudbuild.builds.update

remotebuildexecution.blobs.get

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.builds.approver
Titolo: Approvatore Cloud Build
Fornisci l'accesso per approvare o

rifiuta build in attesa

cloudbuild.builds.approve

cloudbuild.builds.get

cloudbuild.builds.list

remotebuildexecution.blobs.get

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.builds.builder
Titolo: Account di servizio Cloud Build
Quando abiliti l'API
Cloud Build per un progetto,
l'account di servizio Cloud Build
viene creato automaticamente nel progetto
e gli viene assegnato questo ruolo per le risorse
nel progetto. L'account di servizio
di Cloud Build utilizza questo ruolo solo come
necessario per eseguire azioni quando
esegue la build.
Per un elenco delle autorizzazioni
contenute in questo ruolo,
vedi Account di servizio Cloud Build.
Nome: roles/cloudbuild.integrations.viewer
Titolo: Visualizzatore integrazioni Cloud Build
Può visualizzare Cloud Build

connessioni host

cloudbuild.integrations.get

cloudbuild.integrations.list

resourcemanager.projects.get

resourcemanager.projects.list

Nome:roles/cloudbuild.integrations.editor
Titolo: Editor integrazioni di Cloud Build
Controllo in modifica di Cloud Build

connessioni host

cloudbuild.integrations.get

cloudbuild.integrations.list

cloudbuild.integrations.update

resourcemanager.projects.get

resourcemanager.projects.list

Nome:roles/cloudbuild.integrations.owner
Titolo: Proprietario integrazioni Cloud Build
Controllo completo di Cloud Build

connessioni host

cloudbuild.integrations.create

cloudbuild.integrations.delete

cloudbuild.integrations.get

cloudbuild.integrations.list

cloudbuild.integrations.update

compute.firewalls.create

compute.firewalls.get

compute.firewalls.list

compute.networks.get

compute.networks.updatePolicy

compute.regions.get

compute.subnetworks.get

compute.subnetworks.list

resourcemanager.projects.get

resourcemanager.projects.list

Nome:roles/cloudbuild.connectionViewer
Titolo: Visualizzatore connessioni Cloud Build
Può visualizzare ed elencare le connessioni

e repository

resourcemanager.projects.get

resourcemanager.projects.list

cloudbuild.connections.get

cloudbuild.connections.fetchLinkableRepositories

cloudbuild.connections.list

cloudbuild.connections.getIamPolicy

cloudbuild.repositories.get

cloudbuild.repositories.list

Nome:roles/cloudbuild.connectionAdmin
Titolo: Amministratore connessione Cloud Build
Può gestire le connessioni

e repository

resourcemanager.projects.get

resourcemanager.projects.list

cloudbuild.connections.get

cloudbuild.connections.fetchLinkableRepositories

cloudbuild.connections.list

cloudbuild.connections.create

cloudbuild.connections.update

cloudbuild.connections.delete

cloudbuild.connections.getIamPolicy

cloudbuild.connections.setIamPolicy

cloudbuild.repositories.get

cloudbuild.repositories.list

cloudbuild.repositories.create

cloudbuild.repositories.delete

Nome:roles/cloudbuild.readTokenAccessor
Titolo: Funzione di accesso token di sola lettura di Cloud Build
Può visualizzare la connessione, i relativi repository

e accedere al proprio token di sola lettura

cloudbuild.connections.get

cloudbuild.repositories.get

cloudbuild.repositories.accessReadToken

Nome:roles/cloudbuild.tokenAccessor
Titolo: Funzione di accesso a token di Cloud Build
Può visualizzare la connessione, i relativi repository

e accedere ai propri token di sola lettura e lettura/scrittura

cloudbuild.connections.get

cloudbuild.repositories.get

cloudbuild.repositories.accessReadToken

cloudbuild.repositories.accessReadWriteToken

Nome: roles/cloudbuild.workerPoolOwner
Titolo: Proprietario pool di worker di Cloud Build
Controllo completo del pool privato cloudbuild.workerpools.create

cloudbuild.workerpools.delete

cloudbuild.workerpools.get

cloudbuild.workerpools.list

cloudbuild.workerpools.update

resourcemanager.projects.get

resourcemanager.projects.list

Nome:roles/cloudbuild.workerPoolEditor
Titolo: Editor pool di worker di Cloud Build
Può aggiornare i pool privati cloudbuild.workerpools.get

cloudbuild.workerpools.list

cloudbuild.workerpools.update

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.workerPoolViewer
Titolo: Visualizzatore pool di worker di Cloud Build
Può visualizzare i pool privati cloudbuild.workerpools.get

cloudbuild.workerpools.list

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.workerPoolUser
Titolo: Utente pool di worker di Cloud Build
Può eseguire build nel pool privato cloudbuild.workerpools.use

Oltre ai ruoli predefiniti di Cloud Build sopra riportati, i ruoli Visualizzatore, Editor e Proprietario di base includono anche le autorizzazioni relative a Cloud Build. Tuttavia, ti consigliamo di concedere ruoli predefiniti, ove possibile, per rispettare il principio di sicurezza del privilegio minimo.

La tabella seguente elenca i ruoli di base e i ruoli IAM di Cloud Build che includono.

Ruolo include il ruolo
roles/viewer roles/cloudbuild.builds.viewer, roles/cloudbuild.integrations.viewer
roles/editor roles/cloudbuild.builds.editor, roles/cloudbuild.integrations.editor
roles/owner roles/cloudbuild.integrations.owner

Autorizzazioni

Nella tabella seguente sono elencate le autorizzazioni che il chiamante deve disporre per chiamare ciascun metodo:

Metodo API Autorizzazione richiesta Titolo del ruolo
builds.create()
triggers.create()
triggers.patch()
triggers.delete()
triggers.run()
cloudbuild.builds.create Editor Cloud Build
builds.cancel() cloudbuild.builds.update Editor Cloud Build
builds.get()
triggers.get()
cloudbuild.builds.get Editor Cloud Build, visualizzatore Cloud Build
builds.list()
triggers.list()
cloudbuild.builds.list Editor Cloud Build, visualizzatore Cloud Build

Autorizzazioni per visualizzare i log di build

Per visualizzare i log di build, sono necessarie autorizzazioni aggiuntive a seconda che tu stia archiviando i log nel bucket Cloud Storage predefinito o in un bucket Cloud Storage specificato dall'utente. Per ulteriori informazioni sulle autorizzazioni necessarie per visualizzare i log di build, consulta Archiviazione e visualizzazione dei log di build.

Passaggi successivi