Suporte de API em Aplicativos Web Estáticos do Azure com os Aplicativos de Contêiner do Azure
Os Aplicativos de Contêiner do Azure são uma plataforma gerenciada para hospedar contêineres e microsserviços sem servidor.
Ao vincular o aplicativo de contêiner ao aplicativo Web estático, todas as solicitações para o aplicativo Web estático com uma rota que começa com /api
são enviadas por proxy para a mesma rota no aplicativo de contêiner.
Por padrão, quando um aplicativo de contêiner está vinculado a um aplicativo Web estático, o aplicativo de contêiner aceita apenas solicitações que são enviadas por proxy por meio do aplicativo Web estático vinculado. Um aplicativo de contêiner pode ser vinculado a um único aplicativo Web estático por vez.
As opções de API para Aplicativos Web Estáticos incluem os seguintes serviços do Azure:
- Azure Functions
- Gerenciamento de API do Azure
- Serviço de Aplicativo do Azure
- Aplicativos de Contêiner do Azure
Confira a Visão geral das APIs para obter mais informações.
Observação
A integração com os Aplicativos de Contêiner do Azure requer o plano Standard dos Aplicativos Web Estáticos.
Não há suporte para a integração de back-end nos ambientes de pull request dos Aplicativos Web Estáticos.
Pré-requisitos
Para vincular um aplicativo de contêiner ao seu aplicativo Web estático, você precisará ter um recurso de Aplicativos de Contêiner existente e um aplicativo Web estático.
Recurso | Descrição |
---|---|
Aplicativos de Contêiner do Azure | Se você ainda não tiver um, siga as etapas no guia Implantar seu primeiro aplicativo de contêiner. |
Aplicativo Web estático existente | Se você ainda não tiver um aplicativo Web estático, siga as etapas no guia de introdução para criar um sem estrutura. |
Exemplo
Considere uma instância existente do Aplicativo de Contêiner do Azure que expõe um ponto de extremidade no seguinte local.
https://my-container-app.red-river-123.eastus2.azurecontainerapps.io/api/getProducts
Depois de vinculado, você pode acessar esse mesmo ponto de extremidade por meio do caminho api
do seu aplicativo Web estático, conforme mostrado nesta URL de exemplo.
https://red-sea-123.azurestaticapps.net/api/getProducts
Ambas as URLs apontam para o mesmo ponto de extremidade da API. O ponto de extremidade no aplicativo de contêiner deve ter o prefixo /api
, pois os Aplicativos Web Estáticos correspondem às solicitações feitas para /api
e proxy todo o caminho para o recurso vinculado.
Vincular um aplicativo de contêiner
Para vincular um aplicativo de contêiner como o back-end da API para um aplicativo Web estático, siga estas etapas:
No portal do Azure, navegue até o aplicativo Web estático.
Selecione APIs no menu de navegação.
Localize o ambiente ao qual você deseja vincular a instância de Gerenciamento de API. Selecione Vincular.
No tipo de recurso back-end, selecione Aplicativo de Contêiner.
Na Assinatura, selecione a assinatura que contém o aplicativo de contêiner que você deseja vincular.
No nome do recurso, selecione o aplicativo de contêiner.
Selecione Vincular.
Quando o processo de vinculação for concluído, as solicitações para rotas que começam com /api
são enviadas por proxy para o aplicativo de contêiner vinculado.
Gerenciar o acesso ao aplicativo de contêiner
Seu aplicativo de contêiner é configurado com um provedor de identidade nomeado Azure Static Web Apps (Linked)
que permite apenas o tráfego com proxy por meio do aplicativo Web estático. Para tornar seu aplicativo de contêiner acessível a outros aplicativos, atualize sua configuração de autenticação para adicionar outro provedor de identidade ou altere as configurações de segurança para permitir o acesso não autenticado.
Desvincular um aplicativo de contêiner
Para desvincular um aplicativo de contêiner de um aplicativo Web estático, siga estas etapas:
No portal do Azure, navegue até o aplicativo Web estático.
Selecione APIs no menu de navegação.
Localize o ambiente que você deseja desvincular e selecione o nome do aplicativo de contêiner.
Selecione Desvincular.
Quando o processo de desvinculação for concluído, as solicitações para rotas que começam com /api
não são mais enviadas por proxy para seu aplicativo de contêiner.
Observação
Para evitar expor acidentalmente seu aplicativo de contêiner ao tráfego anônimo, o provedor de identidade criado pelo processo de vinculação não é excluído automaticamente. Você pode excluir o provedor de identidade chamado Aplicativos Web Estáticos do Azure (Vinculado) das configurações de autenticação do aplicativo de contêiner.
Remover autenticação do recurso Aplicativos de Contêiner
Para permitir que seu recurso dos Aplicativos de Contêiner receba tráfego anônimo, siga estas etapas para remover o provedor de identidade:
No portal do Azure, navegue até o recurso Aplicativos de Contêiner.
Selecione Autenticação no menu de navegação.
Na lista de Provedores de identidade, exclua o provedor de identidade relacionado ao recurso Aplicativos Web Estáticos.
Selecione Remover autenticação para remover a autenticação e permitir tráfego anônimo para o seu recurso Aplicativos de Contêiner.
Seu recurso Aplicativos de Contêiner agora pode receber tráfego anônimo.