O Workflows usa a gestão de identidade e de acesso (IAM) para controlar que utilizadores autenticados e contas de serviço podem realizar que ações.
Antes de começar a autenticar e autorizar o acesso aos recursos dos Workflows, certifique-se de que compreende os conceitos básicos da IAM.
Esta página detalha as autorizações necessárias para aceder aos recursos do Workflows, incluindo a capacidade de invocar execuções de fluxos de trabalho.
Para ver informações sobre como conceder autorizações a fluxos de trabalho para aceder a outros serviços, consulte o artigo Conceda uma autorização de fluxo de trabalho para aceder a Google Cloud recursos.
Controlo de acesso
Independentemente da forma como implementa a autenticação, é importante compreender o controlo de acesso e as funções do Workflows disponíveis. Uma função é uma coleção de autorizações que concedem acesso a recursos no Google Cloud. Ao criar uma aplicação de produção, conceda apenas a uma conta de serviço as funções de que precisa para interagir com as Google Cloud APIs, as funcionalidades ou os recursos aplicáveis.
Para mais informações acerca das funções dos Workflows disponíveis, consulte o artigo Funções e autorizações dos Workflows.
Invocar fluxos de trabalho
Uma conta de serviço é uma identidade e um recurso que aceita políticas de IAM. Como resultado, pode conceder funções à conta de serviço e, em seguida, permitir que outros principais usem a identidade da conta de serviço concedendo-lhes uma função na conta de serviço ou num dos recursos principais da conta de serviço.
Por exemplo, pode conceder à conta de serviço a função workflows.invoker
para que a conta tenha autorização para acionar a execução do fluxo de trabalho. Em seguida, pode permitir que um principal use a identidade da sua conta de serviço ou aja em nome desta.
Tenha em atenção que a conta de serviço do fluxo de trabalho não requer a função workflows.invoker
, a menos que o fluxo de trabalho se invoque a si próprio ou a outros fluxos de trabalho.
Para mais informações sobre a simulação da conta de serviço, consulte o artigo Simulação da conta de serviço.
Para conceder à conta de serviço do serviço que chama os Workflows a função Workflows Invoker (roles/workflows.invoker
) para que o serviço tenha autorização para executar fluxos de trabalho e gerir as execuções, faça o seguinte:
Consola
Na Google Cloud consola, aceda à página Contas de serviço:
Aceder a Contas de serviçoSelecione um projeto e, de seguida, clique em Criar conta de serviço.
No campo Nome da conta de serviço, introduza um nome, como
sa-name
.Clique em Criar e continuar.
Na lista Selecionar uma função, selecione Fluxos de trabalho > Invocador de fluxos de trabalho.
Clique em Concluído.
gcloud
Abra um terminal.
Introduza o seguinte comando:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --role roles/workflows.invoker
Substitua o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .SERVICE_ACCOUNT_NAME
: o nome da conta de serviço.