Usar o IAM para controlar o acesso

O Workflows usa o Identity and Access Management (IAM) para controlar quais usuários autenticados e contas de serviço podem executar quais ações.

Antes de começar a autenticar e autorizar o acesso aos recursos do Workflows, entenda os conceitos básicos do IAM.

Esta página detalha as permissões necessárias para acessar os recursos do Workflows, incluindo a capacidade de invocar execuções de fluxo de trabalho.

Para informações sobre como conceder permissões a fluxos de trabalho para acessar outros serviços, consulte Autorizar um fluxo de trabalho a acessar Google Cloud recursos.

Controle de acesso

Independente de como você implementa a autenticação, é importante entender o controle de acesso e os papéis disponíveis do Workflows. Um papel é um conjunto de permissões que concedem acesso a recursos no Google Cloud. Ao criar um aplicativo de produção, conceda a uma conta de serviço apenas os papéis necessários para interagir com as APIs, os recursos ou os recursos aplicáveis Google Cloud .

Para mais informações sobre os papéis disponíveis do Workflows, consulte Papéis e permissões do Workflows.

Invocar o Workflows

Uma conta de serviço é uma identidade e um recurso que aceita políticas do IAM. Como resultado, é possível conceder papéis à conta de serviço e permitir que outros principais representem a conta de serviço concedendo a eles um papel na conta de serviço ou em um dos recursos pai da conta de serviço.

Por exemplo, você pode conceder à conta de serviço o papel workflows.invoker para que ela tenha permissão para acionar a execução do fluxo de trabalho. Em seguida, você pode permitir que um principal represente ou atue como sua conta de serviço. Observe que a conta de serviço do fluxo de trabalho não exige o papel workflows.invoker, a menos que o fluxo de trabalho invoque a si mesmo ou outros fluxos de trabalho.

Para mais informações sobre identidade temporária de conta de serviço, consulte Identidade temporária de conta de serviço.

Para conceder à conta de serviço do serviço que chama o Workflows o papel de Workflows Invoker (roles/workflows.invoker), para que o serviço tenha permissão para executar fluxos de trabalho e gerenciar as execuções, faça o seguinte:

Console

  1. No Google Cloud console do, acesse a página **Contas de serviço**:
    Acessar contas de serviço

  2. Selecione um projeto e clique em Criar conta de serviço.

  3. No campo Nome da conta de serviço, digite um nome, como sa-name.

  4. Clique em Criar e continuar.

  5. Na lista Selecionar um papel, selecione Workflows > Chamador do Workflows.

  6. Clique em Concluído.

gcloud

  1. Abra um terminal.

  2. Digite este comando:

    gcloud projects add-iam-policy-binding PROJECT_ID \
       --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
       --role roles/workflows.invoker

    Substitua:

    • PROJECT_ID: ID do Google Cloud projeto.
    • SERVICE_ACCOUNT_NAME: o nome da conta de serviço.