Rede para cargas de trabalho SaaS no Azure

Sua rede fornece a espinha dorsal de como os clientes acessam seu aplicativo SaaS e permite a comunicação entre os componentes da solução. A maneira como você projeta sua rede tem um efeito direto na segurança, nas operações, no custo, no desempenho e na confiabilidade da solução. Uma abordagem estruturada à sua estratégia de rede torna-se ainda mais importante à medida que o seu ambiente na nuvem cresce.

Decidir sobre uma estratégia de implantação de rede e topologia

As soluções SaaS têm requisitos de rede exclusivos. À medida que você integra mais clientes e seu uso aumenta, os requisitos de rede mudam. Lidar com o crescimento pode ser um desafio devido a recursos limitados, como intervalos de endereços IP. O design da sua rede afeta a segurança e o isolamento do cliente. Planejar sua estratégia de rede ajuda a gerenciar o crescimento, melhorar a segurança e reduzir a complexidade operacional.

Considerações de design

  • Planeje sua estratégia de implantação de rede com base em seu modelo de locação. Decida se os recursos da sua rede serão compartilhados entre os clientes, dedicados a um único cliente ou uma combinação. Essa opção afeta a funcionalidade, a segurança e o isolamento do cliente do seu aplicativo.

    É comum compartilhar recursos de rede, como redes virtuais e perfis do Azure Front Door, entre vários clientes. Essa abordagem reduz os custos e as despesas gerais operacionais. Também simplifica a conectividade. Você pode conectar facilmente os recursos de um cliente com recursos compartilhados, como contas de armazenamento compartilhadas ou um plano de controle.

    No entanto, recursos de rede dedicados para cada cliente podem ser necessários para estabelecer alta segurança e conformidade. Por exemplo, para oferecer suporte a um alto grau de segmentação de rede entre clientes, você usa redes virtuais como limite. Recursos dedicados podem ser necessários quando o número de recursos de rede em todos os clientes excede a capacidade de uma única rede compartilhada.

    Planeje o número de recursos de rede que cada cliente precisará, considerando os requisitos imediatos e futuros. Os requisitos do cliente e os limites de recursos do Azure podem forçar resultados específicos. Recursos diferentes podem exigir estratégias de implantação diferentes, como o uso de redes separadas para emparelhamento de rede virtual com redes virtuais do Azure de propriedade do cliente.

    Para obter mais informações sobre como compartilhar recursos em uma solução SaaS, consulte Organização de recursos para cargas de trabalho SaaS.

  • Compreender topologias de rede. As topologias de rede normalmente se enquadram em três categorias:

    • Rede plana: uma rede única e isolada com sub-redes para segmentação. Adequado quando você tem um único aplicativo multilocatário com um layout de rede simples. As redes planas podem atingir limites de recursos e exigir mais redes à medida que você escala, aumentando as despesas gerais e os custos. Se você planeja hospedar vários aplicativos ou usar carimbos de implantação dedicados na mesma rede virtual, talvez precise de um layout de rede complexo.

    • Hub and spoke: Uma rede de hub centralizada com peering para redes de raios isolados. Adequado para alta escalabilidade e isolamento do cliente, porque cada cliente ou aplicativo tem seu próprio falado, comunicando-se apenas com o hub. Você pode implantar rapidamente mais raios conforme necessário para que os recursos no hub possam ser usados por todos os raios. A comunicação transitiva, ou spoke-to-spoke, através do hub é desativada por padrão, o que ajuda a manter o isolamento do cliente em soluções SaaS.

    • Sem rede: usado para serviços PaaS do Azure onde você pode hospedar cargas de trabalho complexas sem implantar redes virtuais. Por exemplo, o Serviço de Aplicativo do Azure permite a integração direta com outros serviços PaaS na rede de backbone do Azure. Embora essa abordagem simplifique o gerenciamento, ela restringe a flexibilidade na implantação de controles de segurança e a capacidade de otimizar o desempenho. Essa abordagem pode funcionar bem para aplicativos nativos da nuvem. À medida que sua solução evolui, espere fazer a transição para uma topologia hub-and-spoke ao longo do tempo.

      Compensação: Complexidade e segurança. Começar sem um limite de rede definido pode reduzir a carga operacional do gerenciamento de componentes de rede, como grupos de segurança, espaço de endereço IP e firewalls. No entanto, um perímetro de rede é essencial para a maioria das cargas de trabalho. Na ausência de controles de segurança de rede, confie em um forte gerenciamento de identidade e acesso para proteger sua carga de trabalho contra tráfego mal-intencionado.

  • Entenda como a arquitetura de várias regiões afeta as topologias de rede. Em uma arquitetura de várias regiões usando redes virtuais, a maioria dos recursos de rede é implantada em cada região separadamente, porque firewalls, gateways de rede virtual e grupos de segurança de rede não podem ser compartilhados entre regiões.

Recomendações de design

Recomendação Benefício
Decida quais componentes de rede são compartilhados e quais componentes são dedicados ao cliente.

Partilhe recursos que são cobrados por instância, como o Firewall do Azure, o Azure Bastion e o Azure Front Door.
Experimente um suporte equilibrado entre seus requisitos de segurança e isolamento, reduzindo seus custos e encargos operacionais.
Comece com uma topologia plana ou nenhuma abordagem de rede.

Sempre revise os requisitos de segurança primeiro, pois essas abordagens oferecem isolamento limitado e controles de tráfego.
Você pode reduzir a complexidade e o custo de sua solução usando topologias de rede mais simples.
Considere topologias de hub e spoke para necessidades complexas ou ao implantar redes virtuais dedicadas por cliente. Use o hub para hospedar recursos de rede compartilhados entre redes de clientes. Você pode escalar mais facilmente e melhorar sua eficiência de custos compartilhando recursos por meio de sua rede de hub.

Projetar um perímetro de rede seguro

O perímetro da rede estabelece o limite de segurança entre a sua aplicação e outras redes, incluindo a Internet. Ao documentar o perímetro da rede, você pode distinguir entre diferentes tipos de fluxos de tráfego:

  • Tráfego de entrada, que chega à rede a partir de uma fonte externa.
  • Tráfego interno, que vai entre componentes dentro da sua rede.
  • Tráfego de saída, que sai da rede.

Cada fluxo envolve riscos e controles diferentes. Por exemplo, vários controles de segurança são necessários para inspecionar e processar o tráfego de entrada.

Importante

Como prática recomendada geral, siga sempre uma abordagem zero trust. Certifique-se de que todo o tráfego é controlado e inspecionado, incluindo o tráfego interno.

Seus clientes também podem ter requisitos de conformidade específicos que influenciam sua arquitetura. Por exemplo, se eles precisarem de conformidade com SOC 2, eles devem implementar vários controles de rede, incluindo um firewall, firewall de aplicativo da Web e grupos de segurança de rede, para atender aos requisitos de segurança. Mesmo que você não precise cumprir imediatamente, considere esses fatores de extensibilidade ao projetar sua arquitetura.

Consulte SE :06 Recomendações para rede e conectividade

Considerações de design

  • Proteja e gerencie o tráfego de entrada. Inspecione esse tráfego em busca de ameaças de entrada.

    Os firewalls permitem-lhe bloquear IPs maliciosos e concluir análises avançadas, para proteger contra tentativas de intrusão. No entanto, os firewalls podem ser caros. Avalie seus requisitos de segurança para determinar se um firewall é necessário.

    Os aplicativos da Web são vulneráveis a ataques comuns, como injeção de SQL, scripts entre sites e outras 10 principais vulnerabilidades do OWASP. O Azure Web Application Firewall protege contra esses ataques e é integrado ao Application Gateway e ao Azure Front Door. Analise as camadas desses serviços para entender quais recursos do WAF estão em quais produtos.

    Os ataques DDoS são um risco para aplicações voltadas para a Internet. O Azure fornece um nível básico de proteção sem custos. A Proteção contra DDoS do Azure fornece proteção avançada aprendendo seus padrões de tráfego e ajustando as proteções de acordo, embora elas tenham um custo. Se estiver a utilizar o Front Door, tire partido das capacidades DDoS incorporadas.

    Além da segurança, você também pode manipular o tráfego de entrada para melhorar o desempenho do seu aplicativo, usando cache e balanceamento de carga.

    Considere usar um serviço de proxy reverso como o Azure Front Door para gerenciamento de tráfego HTTP(S) global. Como alternativa, use o Gateway de Aplicativo ou outros serviços do Azure para controle de tráfego de entrada. Para saber mais sobre as opções de balanceamento de carga no Azure, consulte Opções de balanceamento de carga.

  • Proteja o tráfego interno. Certifique-se de que o tráfego entre seu aplicativo e seus componentes seja seguro para evitar acesso mal-intencionado. Proteja esses recursos e melhore o desempenho usando tráfego interno em vez de roteamento pela Internet. O Azure Private Link é normalmente utilizado para ligar aos recursos do Azure através de um endereço IP interno na sua rede. Para alguns tipos de recursos, os pontos de extremidade de serviço podem ser uma alternativa mais econômica. Se você habilitar a conectividade pública com a Internet para seus recursos, entenda como restringir o tráfego usando endereços IP e identidades de aplicativos, como identidades gerenciadas.

  • Proteja o tráfego de saída. Em algumas soluções, inspecione o tráfego de saída para evitar a exfiltração de dados, especialmente para conformidade regulatória e clientes corporativos. Use firewalls para gerenciar e revisar o tráfego de saída, bloqueando conexões com locais não autorizados.

  • Planeje como dimensionar a conectividade de saída e o SNAT. O esgotamento da porta SNAT (conversão de endereços de rede) de origem pode afetar aplicativos multilocatário. Esses aplicativos geralmente precisam de conexões de rede distintas para cada locatário, e o compartilhamento de recursos entre clientes aumenta o risco de esgotamento do SNAT à medida que sua base de clientes cresce. Você pode reduzir a exaustão do SNAT usando o Gateway NAT do Azure, firewalls como o Firewall do Azure ou uma combinação das duas abordagens.

Recomendações de design

Recomendação Benefício
Mantenha um catálogo dos pontos de extremidade de rede expostos à Internet. Capture detalhes como endereço IP (se estático), nome do host, portas, protocolos usados e justificativa para conexões.

Documente como você planeja proteger cada ponto de extremidade.
Essa lista forma a base da sua definição de perímetro, permitindo que você tome decisões explícitas sobre o gerenciamento de tráfego por meio de sua solução.
Entenda os recursos de serviço do Azure para limitar o acesso e aprimorar a proteção.

Por exemplo, expor pontos de extremidade de conta de armazenamento aos clientes requer controles adicionais, como assinaturas de acesso compartilhado, firewalls de conta de armazenamento e uso de contas de armazenamento separadas para uso interno e externo.
Você pode selecionar controles que atendam às suas necessidades de segurança, custo e desempenho.
Para aplicativos baseados em HTTP(S), use um proxy reverso, como o Azure Front Door ou o Application Gateway. Os proxies reversos fornecem uma ampla gama de recursos para melhorias de desempenho, resiliência, segurança e redução da complexidade operacional.
Inspecione o tráfego de entrada usando um firewall de aplicativo Web.

Evite expor recursos baseados na Web, como um Serviço de Aplicativo ou o Serviço Kubernetes do Azure (AKS), diretamente à Internet.
Pode proteger as suas aplicações Web de forma mais eficaz contra ameaças comuns e reduzir a exposição geral da sua solução.
Proteja seu aplicativo contra ataques DDoS.

Use o Azure Front Door ou a Proteção contra DDoS do Azure, dependendo dos protocolos usados por seus pontos de extremidade públicos.
Proteja a sua solução de um tipo comum de ataque.
Se seu aplicativo exigir conectividade de saída em escala, use o NAT Gateway ou um firewall para fornecer portas SNAT adicionais. Você pode suportar níveis mais altos de escala.

Conectividade entre redes

Para alguns cenários, talvez seja necessário conectar-se a recursos externos ao Azure, como dados dentro da rede privada de um cliente ou ativos em um provedor de nuvem diferente em uma configuração multicloud. Essas necessidades podem complicar seu projeto de rede, exigindo várias abordagens para implementar conectividade entre redes com base em seus requisitos específicos.

Considerações de design

  • Identifique os pontos de extremidade aos quais o aplicativo precisa de conexão. O aplicativo pode precisar se comunicar com outros serviços, como serviços de armazenamento e bancos de dados. Documente o proprietário, a localização e o tipo de conectividade. Em seguida, você pode escolher o método apropriado para se conectar a esses pontos de extremidade. As abordagens comuns incluem:

    Localização do recurso Proprietário Opções de conectividade a considerar
    Azure Cliente
    • Ponto de extremidade privado (entre locatários do Microsoft Entra ID)
    • Emparelhamento de rede virtual (entre locatários do Microsoft Entra ID)
    • Ponto de extremidade de serviço (entre locatários do Microsoft Entra ID)
    Outro fornecedor de cloud ISV ou cliente
    • VPN site a site
    • ExpressRoute
    • Internet
    No local ISV ou cliente
    • VPN site a site
    • ExpressRoute
    • Internet
    • Link privado e ponto de extremidade privado. Forneça conectividade segura a vários recursos do Azure, incluindo balanceadores de carga internos para máquinas virtuais. Eles permitem o acesso privado à sua solução SaaS para os clientes, embora venham com considerações de custo.

      Compensação: Segurança e custo. O link privado garante que seu tráfego permaneça em sua rede privada e é recomendado para conectividade de rede entre locatários do Microsoft Entra. No entanto, cada ponto de extremidade privado incorre em custos, que podem ser adicionados com base nas suas necessidades de segurança. Os pontos de extremidade de serviço podem ser uma alternativa econômica, mantendo o tráfego na rede de backbone da Microsoft enquanto fornecem algum nível de conectividade privada.

    • Ponto de extremidade do serviço. Encaminha o tráfego para recursos PaaS através da rede de backbone da Microsoft, garantindo a comunicação serviço-a-serviço. Eles podem ser econômicos para aplicativos de alta largura de banda, mas exigem a configuração e manutenção de listas de controle de acesso para segurança. O suporte para pontos de extremidade de serviço entre locatários do Microsoft Entra ID varia de acordo com o serviço do Azure. Verifique a documentação do produto para cada serviço que você usa.

    • O emparelhamento de rede virtual conecta duas redes virtuais, permitindo que recursos em uma rede acessem endereços IP na outra. Ele facilita a conectividade com recursos privados em uma rede virtual do Azure. O acesso pode ser gerenciado usando grupos de segurança de rede, mas impor o isolamento pode ser um desafio. Portanto, é importante planejar sua topologia de rede com base nas necessidades específicas do cliente.

    • As redes virtuais privadas (VPNs) criam um túnel seguro através da Internet entre duas redes, incluindo entre provedores de nuvem e locais locais. As VPNs site a site usam dispositivos de rede em cada rede para configuração. Eles oferecem uma opção de conectividade de baixo custo, mas exigem configuração e não garantem uma taxa de transferência previsível.

    • O ExpressRoute fornece uma conexão privada dedicada, de alto desempenho entre o Azure e outros provedores de nuvem ou redes locais. Ele garante um desempenho previsível e evita o tráfego da Internet, mas vem com custos mais altos e requer uma configuração mais complexa.

  • Planeje com base no destino. Talvez seja necessário conectar-se a recursos em diferentes locatários do Microsoft Entra ID, especialmente se o recurso de destino estiver na assinatura do Azure de um cliente. Considere o uso de pontos de extremidade privados, uma VPN site a site ou emparelhamento de redes virtuais. Para obter mais informações, consulte Emparelhamento de redes virtuais em cada locatário do Microsoft Entra ID.

    Para se conectar a recursos hospedados em outro provedor de nuvem, é comum usar conectividade pública com a Internet, uma VPN site a site ou Rota Expressa. Para obter mais informações, consulte Conectividade com outros provedores de nuvem.

  • Compreenda os efeitos da conectividade na topologia da rede. Uma rede virtual do Azure pode ter apenas um gateway de rede virtual, que pode se conectar a vários locais por meio de VPN site a site ou Rota Expressa. Mas, há limites para o número de conexões por meio de um gateway, e isolar o tráfego do cliente pode ser um desafio. Para várias conexões com locais diferentes, planeje sua topologia de rede de acordo, possivelmente implantando uma rede virtual separada para cada cliente.

  • Compreenda as implicações para o planejamento de endereços IP. Algumas abordagens de conectividade fornecem automaticamente a conversão de endereços de rede (NAT), evitando problemas com endereços IP sobrepostos. No entanto, o emparelhamento de rede virtual e a Rota Expressa não executam NAT. Ao usar esses métodos, planeje cuidadosamente os recursos de rede e as alocações de endereços IP para evitar a sobreposição de intervalos de endereços IP e garantir o crescimento futuro. O planejamento de endereços IP pode ser complexo, especialmente ao se conectar a terceiros, como clientes, portanto, considere possíveis conflitos com seus intervalos de IP.

  • Entenda o faturamento de saída da rede. O Azure normalmente cobra pelo tráfego de rede de saída quando sai da rede da Microsoft ou se move entre regiões do Azure. Ao projetar soluções multi-região ou multicloud, é importante entender as implicações de custo. As opções de arquitetura, como usar o Azure Front Door ou o ExpressRoute, podem afetar a forma como você é cobrado pelo tráfego de rede.

Recomendações de design

Recomendação Benefício
Prefira abordagens de rede privada para conexão entre redes para priorizar a segurança.

Considere o roteamento pela Internet somente depois de avaliar as implicações de segurança e desempenho associadas.
O tráfego privado atravessa um caminho de rede seguro, o que ajuda a reduzir muitos tipos de riscos de segurança.
Ao conectar-se a recursos do cliente hospedados em seus ambientes do Azure, use Link Privado, pontos de extremidade de serviço ou emparelhamentos de rede virtual. Você pode manter o tráfego na rede da Microsoft, o que ajuda a reduzir o custo e a complexidade operacional em comparação com outras abordagens.
Ao conectar-se entre provedores de nuvem ou a redes locais, use VPNs site a site ou ExpressRoute. Essas tecnologias fornecem conexões seguras entre provedores.

Implante em ambientes de propriedade dos clientes

Seu modelo de negócios pode exigir que você hospede o aplicativo ou seus componentes no ambiente do Azure de um cliente. O cliente gerencia sua própria assinatura do Azure e paga diretamente o custo dos recursos necessários para executar o aplicativo. Como provedor de soluções, você é responsável por gerenciar a solução, como a implantação inicial, aplicar a configuração e implantar atualizações no aplicativo.

Nessas situações, os clientes geralmente trazem sua própria rede e implantam seu aplicativo em um espaço de rede que eles definem. Os Aplicativos Gerenciados do Azure oferecem recursos para facilitar esse processo. Para obter mais informações, consulte Usar a rede virtual existente com aplicativos gerenciados do Azure.

Considerações de design

  • Intervalos de endereços IP e conflitos. Quando os clientes implantam e gerenciam redes virtuais, eles são responsáveis por lidar com conflitos de rede e dimensionamento. No entanto, você deve antecipar diferentes cenários de uso do cliente. Planeje implantações em ambientes com espaço de endereço IP mínimo usando endereços IP de forma eficiente e evite intervalos de endereços IP codificados para evitar sobreposições com intervalos de clientes.

    Como alternativa, implante uma rede virtual dedicada para sua solução. Você pode usar o Link privado ou o emparelhamento de rede virtual para permitir que os clientes se conectem aos recursos. Essas abordagens são descritas em Conectividade entre redes. Se você definiu pontos de entrada e saída, avalie o NAT como uma abordagem para eliminar problemas causados por sobreposições de endereços IP.

  • Fornecer acesso à rede para fins de gerenciamento. Analise os recursos implantados nos ambientes dos clientes e planeje como acessá-los para monitorá-los, gerenciá-los ou reconfigurá-los. Quando os recursos são implantados com endereços IP privados em um ambiente de propriedade do cliente, certifique-se de ter um caminho de rede para alcançá-los a partir de sua própria rede. Considere como você facilita as alterações de aplicativo e recurso, como enviar por push uma nova versão do aplicativo ou atualizar uma configuração de recurso do Azure.

    Em algumas soluções, você pode usar recursos fornecidos pelos Aplicativos Gerenciados do Azure, como acesso just-in-time e implantação de atualizações para aplicativos. Se precisar de mais controle, você pode hospedar um ponto de extremidade na rede do cliente ao qual seu plano de controle pode se conectar, fornecendo acesso aos seus recursos. Esse método requer recursos e desenvolvimento adicionais do Azure para atender aos requisitos de segurança, operacionais e de desempenho. Para obter um exemplo de como implementar essa abordagem, consulte Exemplo de atualização de aplicativos gerenciados do Azure.

Recomendações de design

Recomendação Benefício
Use os Aplicativos Gerenciados do Azure para implantar e gerenciar recursos implantados pelo cliente. Os Aplicativos Gerenciados do Azure fornecem uma variedade de recursos que permitem implantar e gerenciar recursos dentro da assinatura do Azure de um cliente.
Minimize o número de endereços IP que você consome no espaço de rede virtual do cliente. Os clientes geralmente têm disponibilidade restrita de endereços IP. Ao minimizar sua pegada e dissociar seu dimensionamento do uso de endereços IP, você pode ampliar o número de clientes que podem usar sua solução e permitir níveis mais altos de crescimento.
Planeje como obter acesso à rede para gerenciar recursos em ambientes de clientes, considerando monitoramento, alterações na configuração de recursos e atualizações de aplicativos. Você pode configurar diretamente os recursos que gerencia.
Decida se deseja implantar uma rede virtual dedicada ou integrar-se à rede virtual existente de um cliente. Ao planejar com antecedência, você garante que pode atender aos requisitos de isolamento, segurança e integração com os outros sistemas de seus clientes.
Desabilite o acesso público nos recursos do Azure por padrão. Prefira a entrada privada sempre que possível. Você reduzirá o escopo dos recursos de rede que você e seus clientes precisam proteger.

Recursos adicionais

A multilocação é uma metodologia de negócios central para projetar cargas de trabalho SaaS. Estes artigos fornecem mais informações relacionadas ao design de rede:

Próximo passo

Saiba mais sobre as considerações da plataforma de dados para integridade e desempenho de dados para cargas de trabalho SaaS no Azure.