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 Cloud.

    Abrir a página do IAM

  2. Selecione o projeto e clique em Continuar.

  3. Clique em Add.

  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 de ferramentas gcloud do recurso que você quer 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.

Como revogar papéis no projeto

Console

  1. Abra a página do IAM no Console do Cloud.

    Abrir a página do IAM

  2. Selecione o projeto e clique em Continuar.

  3. Na tabela de permissões, localize o ID do 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

Onde:

  • group: o grupo de ferramentas gcloud do recurso que você quer 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 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 visualizar os principais com um papel específico, expanda o nome do papel.

gcloud

Para visualizar todos os usuários que recebem um papel específico em um projeto do Cloud, execute o comando a seguir:

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

Onde:

  • project-id é o ID do projeto.

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

Por exemplo, para visualizar todos os principais em um projeto que recebeu o papel de Leitor do projeto do Cloud, 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