Suporte de API em Aplicativos Web Estáticos do Azure com 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.

Quando você vincula seu aplicativo de contêiner ao seu aplicativo Web estático, todas as solicitações para seu aplicativo Web estático com uma rota que começa com /api são intermediadas por proxy para a mesma rota no aplicativo de contêiner.

Por padrão, quando um aplicativo de contêiner é vinculado a um aplicativo Web estático, o aplicativo de contêiner só aceita solicitações que são intermediadas 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 de cada vez.

As opções de API para Aplicativos Web Estáticos incluem os seguintes serviços do Azure:

Consulte a visão geral das APIs para obter mais informações.

Nota

A integração com os Aplicativos de Contêiner do Azure requer o plano Static Web Apps Standard.

A integração de back-end não é suportada 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.
Aplicação Web estática existente Se você ainda não tiver um, siga as etapas no guia de introdução para criar um aplicativo Web estático No Framework .

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

Uma vez vinculado, você pode acessar esse mesmo ponto de extremidade através do caminho do api seu aplicativo Web estático, conforme mostrado neste URL de exemplo.

https://red-sea-123.azurestaticapps.net/api/getProducts

Ambos os 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 Static Web Apps corresponde às solicitações feitas e /api faz proxy de todo o caminho para o /api recurso vinculado.

Para vincular um aplicativo de contêiner como back-end de API para um aplicativo Web estático, siga estas etapas:

  1. No portal do Azure, vá para o aplicativo Web estático.

  2. Selecione APIs no menu de navegação.

  3. Localize o ambiente ao qual você deseja vincular a instância de Gerenciamento de API. Selecionar Ligação.

  4. Em Tipo de recurso de back-end, selecione Aplicativo de contêiner.

  5. Em Assinatura, selecione a assinatura que contém o aplicativo de contêiner que você deseja vincular.

  6. Em Nome do recurso, selecione o aplicativo contêiner.

  7. Selecionar Ligação.

Quando o processo de vinculação é concluído, as solicitações para rotas que começam com /api são intermediadas 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 chamado Azure Static Web Apps (Linked) que permite apenas o tráfego que é intermediado por 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 acesso não autenticado.

Para desvincular um aplicativo contêiner de um aplicativo Web estático, siga estas etapas:

  1. No portal do Azure, vá para o aplicativo Web estático.

  2. Selecione APIs no menu de navegação.

  3. Localize o ambiente que você deseja desvincular e selecione o nome do aplicativo de contêiner.

  4. Selecione Desvincular.

Quando o processo de desvinculação estiver concluído, as solicitações para rotas que começam com /api não serão mais intermediadas por proxy para seu aplicativo de contêiner.

Nota

Para evitar a exposição acidental do aplicativo 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 Aplicativos de contêiner receba tráfego anônimo, siga estas etapas para remover o provedor de identidade:

  1. No portal do Azure, navegue até o recurso Aplicativos de Contêiner.

  2. Selecione Autenticação no menu de navegação.

  3. Na lista de provedores de identidade, exclua o provedor de identidade relacionado ao recurso Static Web Apps.

  4. Selecione Remover autenticação para remover a autenticação e permitir tráfego anônimo para o recurso Aplicativos de contêiner.

Seu recurso Container Apps agora pode receber tráfego anônimo.

Próximos passos