Como configurar o acesso aos recursos do Cloud Build

Por padrão, somente o criador de um projeto do Google Cloud tem acesso ao projeto e aos recursos dele. Para conceder acesso a outros usuários, é possível conceder papéis de gerenciamento de identidade e acesso (IAM, na sigla em inglês) no projeto ou em um recurso específico do Cloud Build.

Nesta página, descrevemos como configurar o controle de acesso dos recursos do Cloud Build.

Antes de começar

Como atribuir papéis no projeto

Console

  1. Abra a página do IAM no console do Google Cloud:

    Abrir a página do IAM

  2. Selecione o projeto e clique em Continuar.

  3. Clique em Conceder acesso.

  4. Digite o endereço de e-mail da conta de serviço ou do usuário.

  5. Selecione o papel desejado no menu suspenso. Os papéis do Cloud Build estão em Cloud Build.

  6. Clique em Save.

gcloud

Para conceder um papel a um principal, execute o comando add-iam-policy-binding:

gcloud group add-iam-policy-binding resource \
    --member=principal --role=role-id

Em que:

  • group: o grupo da CLI gcloud para o recurso que você que deseja atualizar. Por exemplo, é possível usar projetos ou organizações.

  • resource: o nome do recurso.

  • principal: um identificador para o principal, que geralmente tem o seguinte formato: principal-type:id. Por exemplo: user:my-user@example.com. Para ver uma lista completa dos tipos principal ou de membro, consulte a referência de vinculação de políticas.

  • role-id: o nome do papel.

Por exemplo, para conceder o papel de visualizador do Cloud Build ao usuário my-user@example.com do projeto my-project:

gcloud projects add-iam-policy-binding my-project \
    --member=user:my-user@example.com --role=roles/cloudbuild.builds.viewer

Como conceder permissões para executar comandos gcloud

Para executar comandos gcloud builds, apenas usuários com papéis cloudbuild.builds.viewer ou cloudbuild.builds.editor também precisam da permissão serviceusage.services.use. Para conceder essa permissão ao usuário, conceda a ele o papel serviceusage.serviceUsageConsumer.

O usuário com papéis/editor e papéis/proprietário pode executar comandos gcloud builds sem a permissão serviceusage.services.use adicional.

Permissões para visualizar registros de versão

Para ver os registros de versão, você precisa de permissões adicionais, dependendo do armazenamento dos registros de versão no bucket padrão do Cloud Storage ou de um bucket do Cloud Storage especificado pelo usuário. Para mais informações sobre permissões, necessário para ver os registros de build, consulte Como visualizar registros de build.

Como revogar papéis no projeto

Console

  1. Abra a página do IAM no console do Google Cloud:

    Abrir a página do IAM

  2. Selecione o projeto e clique em Continuar.

  3. Na tabela de permissões, localize o ID de e-mail do principal e clique no ícone de lápis.

  4. Exclua o papel que você quer revogar.

  5. Clique em Save.

gcloud

Para revogar um papel de um usuário, execute o comando remove-iam-policy-binding:

gcloud group remove-iam-policy-binding resource \
    --member=principal --role=role-id

Em que:

  • group: o grupo da CLI gcloud para o recurso que você que deseja atualizar. Por exemplo, é possível usar projetos ou organizações.

  • resource: o nome do recurso.

  • principal: um identificador para o principal, que geralmente tem o seguinte formato: principal-type:id. Por exemplo: user:my-user@example.com. Para ver uma lista completa dos tipos principal ou de membro, consulte a referência de vinculação de políticas.

  • role-id: o nome do papel.

Por exemplo, para revogar o papel de visualizador do Cloud Build do usuário my-user@example.com para o projeto my-project:

gcloud projects remove-iam-policy-binding my-project \
    --member=user:my-user@example.com --role=roles/cloudbuild.builds.viewer

Como visualizar papéis no projeto

Console

  1. Abra a página do IAM no console do Google Cloud:

    Abrir a página do IAM

  2. Selecione o projeto e clique em Continuar.

  3. Em Ver por, clique em Papéis.

  4. Para ver os principais com um papel específico, expanda o nome da função.

gcloud

Para visualizar todos os usuários que receberam um papel específico em um projeto do Google Cloud, execute o seguinte comando:

gcloud projects get-iam-policy project-id \
    --flatten="bindings[].members" \
    --format="table(bindings.members)" \
    --filter="bindings.role:role-id"

Em que:

  • project-id é o ID do projeto.

  • role-id é o nome do papel em que você quer ver os principais.

Por exemplo, para conferir todos os principais de um projeto que receberam o projeto do Google Cloud Leitor, execute o seguinte comando:

gcloud projects get-iam-policy my-project \
    --flatten="bindings[].members" \
    --format="table(bindings.members)" \
    --filter="bindings.role:roles/cloudbuild.builds.viewer"

Como criar papéis personalizados do IAM

Para usuários que querem definir os próprios papéis contendo pacotes de permissões que eles especificam, o IAM oferece papéis personalizados. Para instruções sobre como criar e usar papéis personalizados do IAM, consulte Como criar e gerenciar papéis personalizados.

A seguir