Funções e autorizações do IAM

O controlo de acesso no Cloud Build é controlado através da gestão de identidade e de acesso (IAM). A IAM permite-lhe criar e gerir autorizações para Google Cloud recursos. O Cloud Build oferece um conjunto específico de funções de IAM predefinidas, em que cada função contém um conjunto de autorizações. Pode usar estas funções para conceder acesso mais detalhado a recursos Google Cloud específicos e impedir o acesso indesejado a outros recursos. O IAM permite-lhe adotar o princípio de segurança do menor privilégio, pelo que concede apenas o acesso necessário aos seus recursos.

Esta página descreve as funções e as autorizações do Cloud Build.

Funções predefinidas do Cloud Build

Com o IAM, todos os métodos da API do Cloud Build requerem que a identidade que faz o pedido à API tenha as autorizações adequadas para usar o recurso. As autorizações são concedidas através da definição de políticas que concedem funções a um principal (utilizador, grupo ou conta de serviço). Pode conceder várias funções a um principal no mesmo recurso.

A tabela abaixo lista as funções de IAM do Cloud Build e as autorizações que incluem:

Função Descrição Autorizações
Nome: roles/cloudbuild.builds.viewer
Título: leitor do Cloud Build
Pode ver o Cloud Build

recursos

cloudbuild.builds.get

cloudbuild.builds.list

remotebuildexecution.blobs.get

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.builds.editor
Título: editor do Cloud Build
Controlo total do Cloud Build

recursos

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
Título: aprovador do Cloud Build
Conceda acesso para aprovar ou

rejeitar compilações pendentes

cloudbuild.builds.approve

cloudbuild.builds.get

cloudbuild.builds.list

remotebuildexecution.blobs.get

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.builds.builder
Título: conta de serviço antiga do Cloud Build
Quando ativa a
API Cloud Build para um projeto,
a conta de serviço antiga do Cloud Build
é criada automaticamente no projeto
e recebe esta função para os recursos
no projeto. A conta de serviço antiga do Cloud Build usa esta função apenas como
necessária para realizar ações quando
executa a sua compilação.
Para ver uma lista das autorizações
que esta função contém,
consulte o artigo Conta de serviço predefinida do Cloud Build.
Nome: roles/cloudbuild.integrationsViewer
Título: leitor de integrações do Cloud Build
Pode ver o Cloud Build

ligações de anfitriões

cloudbuild.integrations.get

cloudbuild.integrations.list

resourcemanager.projects.get

resourcemanager.projects.list

Nome:roles/cloudbuild.integrationsEditor
Título: editor de integrações do Cloud Build
Edite o controlo do Cloud Build

ligações de anfitriões

cloudbuild.integrations.get

cloudbuild.integrations.list

cloudbuild.integrations.update

resourcemanager.projects.get

resourcemanager.projects.list

Nome:roles/cloudbuild.integrationsOwner
Título: proprietário das integrações do Cloud Build
Controlo total do Cloud Build

ligações de anfitriões

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
Título: visualizador de ligações do Cloud Build
Pode ver e apresentar a lista de associações

e repositórios

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
Título: administrador da ligação do Cloud Build
Pode gerir associações

e repositórios

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
Título: Cloud Build Read Only Token Accessor
Pode ver a associação, os respetivos repositórios,

e aceder ao respetivo token só de leitura

cloudbuild.connections.get

cloudbuild.repositories.get

cloudbuild.repositories.accessReadToken

Nome:roles/cloudbuild.tokenAccessor
Título: Cloud Build Token Accessor
Pode ver a associação, os respetivos repositórios,

e aceder ao respetivo token de leitura/escrita e só de leitura

cloudbuild.connections.get

cloudbuild.repositories.get

cloudbuild.repositories.accessReadToken

cloudbuild.repositories.accessReadWriteToken

Nome: roles/cloudbuild.workerPoolOwner
Título: proprietário do WorkerPool do Cloud Build
Controlo total da piscina privada 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
Título: Editor de WorkerPools do Cloud Build
Podem atualizar piscinas privadas cloudbuild.workerpools.get

cloudbuild.workerpools.list

cloudbuild.workerpools.update

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.workerPoolViewer
Título: visualizador do WorkerPool do Cloud Build
Pode ver piscinas privadas cloudbuild.workerpools.get

cloudbuild.workerpools.list

resourcemanager.projects.get

resourcemanager.projects.list

Nome: roles/cloudbuild.workerPoolUser
Título: utilizador do WorkerPool do Cloud Build
Podem executar compilações no pool privado cloudbuild.workerpools.use

Além das funções predefinidas do Cloud Build acima, as funções básicas de leitor, editor e proprietário também incluem autorizações relacionadas com o Cloud Build. No entanto, recomendamos que conceda funções predefinidas sempre que possível para agir em conformidade com o princípio de segurança do menor privilégio.

A tabela abaixo apresenta as funções básicas e as funções do IAM do Cloud Build que incluem.

Função inclui função
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

Autorizações

A tabela seguinte lista as autorizações que o autor da chamada tem de ter para chamar cada método:

Método da API Autorização necessária Título da função
builds.create()
triggers.create()
triggers.patch()
triggers.delete()
triggers.run()
cloudbuild.builds.create Editor do Cloud Build
builds.cancel() cloudbuild.builds.update Editor do Cloud Build
builds.get()
triggers.get()
cloudbuild.builds.get Editor do Cloud Build, visualizador do Cloud Build
builds.list()
triggers.list()
cloudbuild.builds.list Editor do Cloud Build, visualizador do Cloud Build

Autorizações para ver registos de compilação

Para ver os registos de compilação, precisa de autorizações adicionais, consoante esteja a armazenar os registos de compilação no contentor do Cloud Storage predefinido ou num contentor do Cloud Storage especificado pelo utilizador. Para mais informações sobre as autorizações necessárias para ver os registos de compilação, consulte o artigo Armazenar e ver registos de compilação.

O que se segue?