Ruoli e autorizzazioni IAM

Il controllo dell'accesso in Cloud Build viene controllato utilizzando Identity and Access Management (IAM). IAM consente di creare e gestire delle autorizzazioni per le risorse Google Cloud. Cloud Build fornisce un insieme specifico di ruoli IAM predefiniti in cui ogni ruolo contiene un insieme di autorizzazioni. Puoi utilizzare questi ruoli per concedere un accesso più granulare a risorse Google Cloud specifiche e impedire l'accesso indesiderato ad altre risorse. IAM consente di adottare 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 predefiniti di Cloud Build

Con IAM, ogni metodo dell'API Cloud Build richiede che l'identità che effettua la richiesta dell'API disponga delle autorizzazioni appropriate per utilizzare la risorsa. Le autorizzazioni vengono concesse impostando criteri che assegnano i ruoli a un soggetto (utente, gruppo o account di servizio). Puoi concedere più ruoli a un dell'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 di 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
Fornire l'accesso per approvare o

Rifiutare le 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 legacy Cloud Build
Quando attivi
API Cloud Build per un progetto,
l'account di servizio legacy di Cloud Build
viene creato automaticamente nel progetto
e gli viene concesso questo ruolo per le risorse
nel progetto. Cloud Build
l'account di servizio precedente utilizza questo ruolo solo come
necessaria per eseguire azioni quando
che esegue la build.
Per un elenco delle autorizzazioni
contenute in questo ruolo,
consulta 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: Cloud Build Integrations Editor
Controllo delle modifiche 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: Cloud Build Integrations Owner
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 delle 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 connessioni 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: Cloud Build Read Only Token Accessor
Può visualizzare la connessione, i suoi 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 suoi repository

e accedere al proprio token di sola lettura e di lettura/scrittura

cloudbuild.connections.get

cloudbuild.repositories.get

cloudbuild.repositories.accessReadToken

cloudbuild.repositories.accessReadWriteToken

Nome: roles/cloudbuild.workerPoolOwner
Titolo: Cloud Build WorkerPool Owner
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 WorkerPool 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: Cloud Build WorkerPool Viewer
Può visualizzare i pool privati cloudbuild.workerpools.get

cloudbuild.workerpools.list

resourcemanager.projects.get

resourcemanager.projects.list

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

Oltre ai ruoli predefiniti di Cloud Build sopra indicati, i ruoli di base Visualizzatore, Editor e Proprietario includono anche le autorizzazioni relative a Cloud Build. Tuttavia, ti consigliamo di assegnare ruoli predefiniti, se 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 inclusi.

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

La tabella seguente elenca le autorizzazioni che chi chiama 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 Cloud Build Editor
builds.cancel() cloudbuild.builds.update Cloud Build Editor
builds.get()
triggers.get()
cloudbuild.builds.get Cloud Build Editor, Cloud Build Viewer
builds.list()
triggers.list()
cloudbuild.builds.list Cloud Build Editor, Cloud Build Viewer

Autorizzazioni per visualizzare i log di build

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

Passaggi successivi