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 Padrão de Aplicativos Web Estáticos.
Não há suporte para a integração de back-end em ambientes de solicitação pull de Aplicativos Web Estáticos.
Pré-requisitos
Para vincular um aplicativo de contêiner ao seu aplicativo Web estático, você precisa 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 exponha um ponto de extremidade por meio do 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, já que os Aplicativos Web Estáticos correspondem às solicitações feitas e /api
fazem proxy de todo o caminho para o /api
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 a autenticação do recurso Aplicativos de Contêiner
Para habilitar seu recurso Aplicativos de Contêiner para receber 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 o tráfego anônimo para o recurso Aplicativos de Contêiner.
Seu recurso Aplicativos de contêiner agora pode receber tráfego anônimo.