Compartilhar via


Acelerar e proteger seu aplicativo Web com o Azure Front Door

O Azure Front Door é uma CDN (rede de entrega de conteúdo) distribuída globalmente que fornece menor latência e entrega mais rápida para seu conteúdo e seu aplicativo Web. Além disso, ele permite que o conteúdo esteja disponível com os mais altos níveis de resiliência e fornece uma ampla variedade de recursos, como um balanceador de carga de aplicativo avançado, a aceleração de tráfego e segurança.

Considere a implantação do Front Door na frente de qualquer aplicativo Web público.

Soluções Well-Architected no Azure

O Azure Well-Architected Framework descreve cinco pilares de excelência arquitetônica. O Azure Front Door ajuda a abordar cada um desses cinco pilares com seus recursos e capacidades internos.

Eficiência do desempenho

O Front Door fornece diversos recursos para ajudar a acelerar o desempenho do aplicativo.

  • Cache: o Front Door fornece uma CDN (rede de distribuição de conteúdo) poderosa para armazenar conteúdo em cache na borda da rede. Quase todos os aplicativos Web contêm conteúdos que podem ser armazenados em cache. Ativos estáticos, como imagens e arquivos JavaScript, podem ser armazenados em cache. Além disso, muitas APIs retornam respostas que podem ser armazenadas em cache, mesmo que por um curto período. O armazenamento em cache ajuda a melhorar o desempenho do aplicativo e reduzir a carga nos servidores de aplicativos.
  • Compactação:muitos tipos de resposta podem ser compactados, o que pode melhorar o tempo de resposta do aplicativo.
  • Aceleração de tráfego global: os recursos de aceleração de tráfego global do Front Door ajudam a melhorar o desempenho de aplicativos Web dinâmicos, roteando solicitações por meio da rede de backbone de alta velocidade da Microsoft.
  • Terminação TLS: as conexões com o Front Door terminam no PoP (ponto de presença) mais próximo do Front Door. A descriptografia TLS é realizada pelo PoP. O maior impacto no desempenho ao fazer a descriptografia TLS é o handshake inicial. Para melhorar o desempenho, o servidor que faz a descriptografia armazena em cache as IDs da sessão TLS e gerencia os tíquetes da sessão TLS. Se as conexões TLS forem encerradas no PoP do Front Door, todas as solicitações do mesmo cliente poderão usar os valores armazenados em cache. Se isso for feito nos servidores de origem, cada vez que as solicitações do cliente forem enviadas para um servidor diferente, o cliente deverá autenticar-se novamente. O uso de tíquetes TLS pode ajudar a atenuar esse problema, mas eles não têm suporte em todos os clientes e podem ser difíceis de configurar e gerenciar.

Segurança

Os recursos de segurança do Front Door ajudam a proteger seus servidores de aplicativos de diversos tipos diferentes de ameaças.

  • TLS de ponta a ponta: o Front Door dá suporte à criptografia TLS de ponta a ponta. O descarregamento TLS/SSL do Front Door encerra a conexão TLS, descriptografa o tráfego no Azure Front Door e o criptografa novamente antes de encaminhá-lo para o back-end.
  • Certificados TLS gerenciados: o Front Door pode emitir e gerenciar certificados, a fim de garantir a proteção dos aplicativos com criptografia e confiança avançadas.
  • Certificados TLS personalizados: para que seja possível utilizar seus próprios certificados TLS, o Front Door permite o uso de uma identidade gerenciada para acessar o cofre de chaves que contém o certificado.
  • Firewall do aplicativo Web: o WAF (firewall do aplicativo Web) do Front Door fornece uma variedade de recursos de segurança para seu aplicativo. Os conjuntos de regras gerenciados verificam as solicitações recebidas em busca de conteúdo suspeito. As regras de proteção contra bots identificam e respondem ao tráfego de bots. Os recursos de filtragem geográfica e limitação de taxa protegem seus servidores de aplicativos contra tráfego inesperado.
  • Bloqueio de protocolo: O Front Door só aceita tráfego nos protocolos HTTP e HTTPS e só processará solicitações válidas com um cabeçalho Host conhecido. Graças a esse comportamento, seu aplicativo está protegido contra muitos tipos de ataques em uma variedade de protocolos.
  • Proteção contra DDoS: devido à arquitetura do Front Door, ele também pode absorver grandes ataques DDoS (negação de serviço) e impedir que o tráfego chegue ao aplicativo.
  • Origens do Link Privado: a integração do Link Privado ajuda a proteger aplicativos de back-end, garantindo que o tráfego só chegue a eles passando pelo Front Door e suas proteções de segurança.

No caso de requisitos rígidos de segurança de rede, é possível usar o Azure Front Door para gerenciar o tráfego HTTP e HTTPS de entrada para o aplicativo e usar o Firewall do Azure para controlar o tráfego não HTTP e de saída.

Confiabilidade

Com o Front Door, é possível criar soluções resilientes e altamente disponíveis.

  • Balanceamento de carga e failover: o Front Door é um balanceador de carga global. Ele monitora a integridade de servidores de origem e, quando uma origem fica indisponível, o Front Door pode encaminhar solicitações para uma origem alternativa. Também é possível usar o Front Door para distribuir o tráfego entre as origens a fim de reduzir a carga em qualquer servidor de origem.
  • Roteamento anycast: o próprio Front Door contém um grande número de PoPs, que podem atender individualmente ao tráfego para qualquer solicitação. O roteamento anycast direciona o tráfego para o PoP do Front Door mais próximo disponível e, quando um PoP não está disponível, os clientes são roteados automaticamente para o PoP seguinte mais próximo.
  • Cache: ao usar o cache do Front Door, você reduz a carga em seus servidores de aplicativos. Se seus servidores estiverem indisponíveis, o Front Door poderá continuar a fornecer respostas em cache até que o aplicativo seja recuperado.

Otimização de custo

Ele ajuda você a reduzir o custo de execução da solução Azure.

  • Cache: ao habilitar o cache, o conteúdo é retornado dos nós de borda globais do Front Door. Essa abordagem reduz os encargos de largura de banda global e melhora o desempenho.
  • Compactação: quando o Front Door compacta suas respostas, ele pode reduzir os encargos de largura de banda da solução.
  • Distribuir o tráfego entre as origens: use o Front Door para reduzir a necessidade de escalar os servidores de aplicativos ou superprovisionar a capacidade deles para picos de tráfego. Cada PoP do Front Door pode retornar conteúdos em cache, se disponíveis, o que reduz a carga nos servidores de aplicativos. Também é possível distribuir o tráfego entre diversos servidores de back-end, o que reduz a carga em cada servidor individual.
  • Perfil compartilhado: é possível usar um único perfil do Front Door para diversos aplicativos diferentes. Ao configurar diversos aplicativos no Front Door, é possível compartilhar o custo em cada um deles e reduzir a configuração necessária.

Excelência operacional

O Front Door ajuda a reduzir a carga operacional de executar um aplicativo de Internet moderno e permite alguns tipos de alterações na solução sem a modificação dos aplicativos.

  • Certificados TLS gerenciados: o Front Door pode emitir e gerenciar certificados. Com esse recurso, não é necessário gerenciar renovações de certificado e você reduz a probabilidade de uma interrupção causada pelo uso de um certificado TLS inválido ou expirado.
  • Certificados TLS curinga: o suporte do Front Door a domínios curinga, incluindo certificados DNS e TLS, permite usar diversos nomes de host sem reconfigurar o Front Door para cada subdomínio.
  • HTTP/2: o Front Door ajuda a modernizar seus aplicativos herdados com o suporte a HTTP/2 sem modificar os servidores de aplicativos.
  • Mecanismo de regras: o mecanismo de regras do Front Door permite alterar a arquitetura interna da solução sem afetar os clientes.
  • Infraestrutura como código: também é possível implantar e configurar o Front Door usando tecnologias de IaC (infraestrutura como código), incluindo o Bicep, o Terraform, os modelos do ARM, o Azure PowerShell e a CLI do Azure.

Arquitetura da solução

Ao implantar uma solução que usa o Azure Front Door, considere como o tráfego flui do cliente para ele e dele para as origens.

O seguinte diagrama ilustra uma arquitetura de solução genérica usando o Front Door:

Diagrama do Azure Front Door encaminhando o tráfego de usuário para os pontos de extremidade.

Cliente para o Front Door

O tráfego do cliente chega primeiro a um PoP do Front Door. O Front Door tem um grande número de PoPs distribuídos em todo o mundo, e o Anycast roteia os clientes para aquele que estiver mais próximo.

Quando a solicitação é recebida pelo PoP do Front Door, o Front Door usa seu nome de domínio personalizado para atender à solicitação. O Front Door executa o descarregamento de TLS usando um certificado TLS gerenciado pelo Front Door ou um certificado TLS personalizado.

O PoP executa muitas funções com base na configuração especificada no perfil do Front Door, incluindo o seguinte:

Depois que o Front Door termina de processar a solicitação de entrada, ele responde diretamente ao cliente (por exemplo, quando retorna um resultado em cache) ou encaminha a solicitação para a origem.

Do Front Door para a origem

O Front Door pode enviar tráfego para a origem de duas maneiras diferentes: com o Link Privado e com endereços IP públicos.

O SKU Premium do Front Door dá suporte ao envio de tráfego para alguns tipos de origem usando o Link Privado. Quando você configura o Link Privado para sua origem, o tráfego usa endereços IP privados. Essa abordagem pode ser usada para garantir que sua origem aceite somente o tráfego de sua instância específica do Front Door e é possível bloquear o tráfego proveniente da Internet.

Quando o PoP do Front Door envia solicitações para sua origem usando um endereço IP público, ele inicia uma nova conexão TCP. Devido a esse comportamento, o servidor de origem vê a solicitação como originada do endereço IP do Front Door, em vez do cliente.

Qualquer que seja a abordagem usada para enviar tráfego para a origem, é geralmente uma boa prática configurá-la para esperar o tráfego do perfil do Front Door e bloquear o tráfego que não flui por ele. Para saber mais, confira Proteger o tráfego para origens do Azure Front Door.

Processamento de resposta

O PoP do Front Door também processa a resposta de saída. O processamento de resposta pode incluir as seguintes etapas:

  • Salvar uma resposta no cache do PoP para acelerar solicitações posteriores.
  • Modificar um cabeçalho de resposta usando o mecanismo de regras.

Análise e relatórios

Como o Front Door processa todas as solicitações recebidas, ele tem visibilidade de todo o tráfego que flui por meio da solução. É possível usar relatórios, métricas e logs do Front Door para entender seus padrões de tráfego.

Dica

Ao usar o Front Door, algumas solicitações podem não ser processadas pelo servidor de origem. Por exemplo, o WAF do Front Door pode bloquear algumas solicitações e retornar respostas em cache para outras. Use a telemetria do Front Door para entender os padrões de tráfego da solução.

Próximas etapas

Saiba como criar um perfil do Azure Front Door.