Habilitar políticas CORS para o conector personalizado do Gerenciamento de API
APLICA-SE A: todas as camadas do Gerenciamento de API
O CORS (compartilhamento de recursos entre origens) é um mecanismo baseado em cabeçalho HTTP que permite que um servidor indique quaisquer origens (domínio, esquema ou porta) além da sua própria, a partir da qual um navegador deve permitir o carregamento de recursos. Os clientes podem adicionar uma política CORS às APIs Web no Gerenciamento de API do Azure, o que adiciona suporte ao compartilhamento de recursos entre origens a uma operação ou a uma API para permitir chamadas entre domínios de clientes baseados em navegador.
Se você exportou uma API do Gerenciamento de API como um conector personalizado no Power Platform e deseja usar clientes com base em navegador incluindo o Power Apps ou o Power Automate para chamar a API, será necessário configurar sua API para habilitar explicitamente solicitações entre origens de aplicativos do Power Platform. Este artigo mostra como definir as duas configurações de política necessárias a seguir:
Adicionar uma política CORS à sua API
Adicionar uma política ao conector personalizado que define um cabeçalho Origin em solicitações HTTP
Pré-requisitos
- Conclua o início rápido a seguir: Criar uma instância do Gerenciamento de API do Azure
- Exportar uma API de sua instância de Gerenciamento de API para um ambiente do Power Platform como um conector personalizado
Adicionar política CORS à API no Gerenciamento de API
Siga estas etapas para configurar a política CORS no Gerenciamento de API.
- Entre no portal do Azure e vá até a sua instância de Gerenciamento de API.
- No menu à esquerda, selecione APIs e selecione a API que você exportou como um conector personalizado. Se você quiser, selecione apenas uma operação de API à qual aplicar a política.
- Na seção Políticas, em Processamento de entrada, selecione + Adicionar política.
- Selecione Permitir CORS (Compartilhamento de Recursos entre Origens).
- Adicione a seguinte Origem permitida:
https://make.powerapps.com
. - Clique em Salvar.
- Para obter mais informações sobre como configurar um política, consulte Definir ou editar políticas.
- Para obter detalhes sobre a política CORS, consulte a referência de política cors.
Observação
Se você já tiver uma política CORS existente no nível do serviço (todas as APIs) para habilitar o console de teste do portal do desenvolvedor, poderá adicionar a origem https://make.powerapps.com
a essa política em vez de configurar uma política separada para a API ou a operação.
Observação
Dependendo de como o conector personalizado é usado nos aplicativos do Power Platform, talvez seja necessário configurar origens adicionais na política CORS. Se você tiver problemas de CORS ao executar aplicativos do Power Platform, use ferramentas de desenvolvedor em seu navegador, rastreamento em Gerenciamento de API ou Application Insights para investigar os problemas.
Adicionar política ao conector personalizado para definir o cabeçalho De origem
Adicione a política a seguir ao conector personalizado em seu ambiente do Power Platform. A política define um cabeçalho Origin para corresponder à origem CORS que você permitiu em Gerenciamento de API.
Para obter detalhes sobre as configurações, confira Criar um conector personalizado do zero.
Entre no Power Apps ou no Power Automate.
No painel esquerdo, selecione Dados>Conectores Personalizados.
Selecione o conector na lista de conectores personalizados.
Selecione o ícone de lápis (Editar) para editar o conector personalizado.
Selecione 3. Definição.
Em Políticas, selecione + Nova política. Selecione ou insira os seguintes detalhes da política.
Setting Valor Nome Um nome de sua escolha, como set-origin-header Modelo Definir cabeçalho HTTP Nome do cabeçalho Origem Valor do cabeçalho https://make.powerapps.com
(mesma URL que você configurou no Gerenciamento de API)Ação se o cabeçalho existir override Executar política em Solicitação Selecione Atualizar um conector.
Depois de definir a política, vá para o 5. Página de teste para testar o conector personalizado.