Ao executar um fluxo, o CloudFlow assume uma função de execução para acessar outros services da Alibaba Cloud em seu nome, como invocar funções do Function Compute (FC), enviar mensagens para filas do Message Service (MNS) ou iniciar fluxos aninhados. Este guia orienta você na criação de uma política de permissões personalizada e de uma função de execução no Resource Access Management (RAM).
O console do CloudFlow gera automaticamente uma função de execução com permissões de sistema. Crie uma política personalizada apenas quando precisar de controle de acesso refinado, como restringir um fluxo a funções específicas do FC ou a filas do MNS.
Pré-requisitos
Antes de começar, verifique se você possui:
Uma conta Alibaba Cloud
Um usuário RAM com direitos administrativos
Acesso ao console do RAM
Como políticas e funções trabalham juntas
Uma política define quais services uma função pode acessar. Após anexar a política a uma função, qualquer entidade que a assuma herdará essas permissões. O CloudFlow assume a função de execução durante o tempo de execução em vez de usar chaves de acesso de longo prazo, o que limita a exposição de credenciais.
Etapa 1: Criar uma política personalizada
Faça logon no console do RAM.
No painel de navegação à esquerda, escolha Permissions > Policies.
-
Na página Policies, clique em Create Policy.

-
Na página Create Policy, clique na aba JSON.

-
Insira o documento de política no editor. Para obter detalhes completos sobre a sintaxe, consulte Policy structure and syntax. A tabela a seguir apresenta padrões comuns de permissão para funções de execução do CloudFlow.
Permissão
Efeito
Ação
ARN do recurso
Invocar uma função específica do FC
Allow
fc:InvokeFunctionacs:fc:::services/Test1/functions/Func1Invocar todas as funções em um service do FC
Allow
fc:InvokeFunctionacs:fc:::services/Test2/functions/*Invocar todas as funções em services do FC com prefixo
PublicAllow
fc:InvokeFunctionacs:fc:::services/Public*/functions/*Enviar mensagens para uma fila do MNS
Allow
mns:SendMessageacs:mns:*:*:/queues/Test1/messagesIniciar uma execução de fluxo
Allow
fnf:StartExecutionacs:fnf:::flows/Test1/executions/* Verifique os resultados da otimização de política. O sistema executa automaticamente uma otimização básica, que remove condições e arrays desnecessários. (Opcional) Para maior refinamento, passe o mouse sobre Optional: advanced optimize e clique em Perform. A otimização avançada divide recursos ou condições incompatíveis, restringe escopos de recursos e deduplica ou mescla instruções de política.
Especifique os parâmetros Name e Note e clique em OK.
Etapa 2: Criar a função de execução
Faça logon no console do RAM.
No painel de navegação à esquerda, escolha Identities > Roles.
-
Na página Roles, clique em Create Role.

-
Defina Principal Type como Cloud Service, selecione um service da Alibaba Cloud para Principal Name e clique em OK.
Os services disponíveis para Principal Name são determinados pelo console do RAM e podem variar.

Na caixa de diálogo Create Role, insira um Role Name (por exemplo,
FnFExecutionRole) e clique em OK.
Etapa 3: Anexar a política à função
Anexe a política personalizada criada na Etapa 1 à função de execução. Para obter instruções detalhadas, consulte Grant permissions to a RAM role.
Etapa 4: Obter o ARN da função
Na página Roles, clique na função de execução criada.
Na seção Basic Information, copie o Alibaba Cloud Resource Name (ARN).
Use este ARN ao criar ou atualizar um fluxo no CloudFlow.