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
No Google Cloud console do, acesse a página **Contas de serviço**:
Acessar contas de serviçoSelecione um projeto e clique em Criar conta de serviço.
No campo Nome da conta de serviço, digite um nome, como
sa-name.Clique em Criar e continuar.
Na lista Selecionar um papel, selecione Workflows > Chamador do Workflows.
Clique em Concluído.
gcloud
Abra um terminal.
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.