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 sua 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 sua solução. Uma abordagem estruturada para sua estratégia de rede torna-se ainda mais importante à medida que seu ambiente de nuvem cresce.
Decidir sobre uma estratégia e topologia de implantação de rede
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 desafiador devido a recursos limitados, como intervalos de endereços IP. Seu design de 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 sobre o design
Planeje sua estratégia de implantação de rede com base em seu modelo de locação. Decida se seus recursos de rede serão compartilhados entre os clientes, dedicados a um único cliente ou a uma combinação. Essa opção afeta a funcionalidade, a segurança e o isolamento do cliente do aplicativo.
É comum compartilhar recursos de rede, como redes virtuais e perfis do Azure Front Door, entre vários clientes. Essa abordagem reduz custos e despesas operacionais. Também simplifica a conectividade. Você pode conectar facilmente os recursos de um cliente a recursos compartilhados, como contas de armazenamento compartilhadas ou um painel 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 dar 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.
Entenda as topologias de rede. As topologias de rede geralmente se enquadram em três categorias:
Rede simples: 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 os limites de recursos e exigir mais redes à medida que você escala, aumentando a sobrecarga 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 e spoke: uma rede de hub centralizada com emparelhamento para redes spoke isoladas. Adequado para alta escalabilidade e isolamento do cliente, pois cada cliente ou aplicativo possui seu próprio spoke, comunicando-se apenas com o hub. Você pode implantar rapidamente mais spokes conforme necessário para que os recursos no hub possam ser usados por todos os spokes. A comunicação transitiva ou spoke-to-spoke por meio do hub é desabilitada por padrão, o que ajuda a manter o isolamento do cliente em soluções SaaS.
Sem rede: usado para serviços de PaaS do Azure em que 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 de 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, conte com um forte gerenciamento de identidade e acesso para proteger sua carga de trabalho contra tráfego mal-intencionado.
Entenda como a arquitetura multirregional 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, pois 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. Compartilhe recursos cobrados por instância, como Firewall do Azure, Azure Bastion e Azure Front Door. |
Experimente um suporte equilibrado entre seus requisitos de segurança e isolamento, reduzindo o custo e a carga operacional. |
Comece com uma topologia plana ou sem 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 hub e spoke para necessidades complexas ou ao implantar redes virtuais dedicadas por cliente. Use o hub para hospedar recursos de rede compartilhados nas redes do cliente. | Você pode escalar com mais facilidade e melhorar sua eficiência de custos compartilhando recursos por meio de sua rede de hubs. |
Projete um perímetro de rede seguro
Seu perímetro de rede estabelece o limite de segurança entre seu aplicativo 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 de uma fonte externa.
- Tráfego interno, que vai entre os componentes 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, sempre siga uma abordagem de confiança zero. Certifique-se de que todo o tráfego seja 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 o SOC 2, deverão implementar vários controles de rede, incluindo um firewall, firewall de aplicativo 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 sobre o design
Proteja e gerencie o tráfego de entrada. Inspecione esse tráfego em busca de ameaças de entrada.
Os firewalls permitem bloquear IPs maliciosos e concluir análises avançadas, para proteger contra tentativas de invasã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 Firewall de Aplicativo Web do Azure protege contra esses ataques e é integrado ao Gateway de Aplicativo e ao Azure Front Door. Revise as camadas desses serviços para entender quais recursos do WAF estão em quais produtos.
Os ataques DDoS são um risco para aplicativos voltados para a Internet. O Azure fornece um nível básico de proteção sem nenhum custo. 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 você estiver usando o Front Door, aproveite os recursos internos de DDoS.
Além da segurança, você também pode manipular o tráfego de entrada para melhorar o desempenho do 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, confira 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 o tráfego interno em vez do roteamento pela Internet. O Link Privado do Azure é comumente usado para se conectar aos recursos do Azure por meio de um endereço IP interno em 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 aplicativo, 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ários. 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 mitigar o esgotamento de 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 endpoint. |
Essa lista forma a base da definição do perímetro, permitindo que você tome decisões explícitas sobre o gerenciamento do tráfego por meio da 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 Gateway de Aplicativo. | Os proxies reversos fornecem uma ampla gama de recursos para melhorias de desempenho, resiliência, segurança e para reduzir a 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 AKS (Serviço de Kubernetes do Azure), diretamente à Internet. |
Você pode proteger com mais eficiência seus aplicativos Web contra ameaças comuns e reduzir a exposição geral de sua solução. |
Proteja seu aplicativo contra ataque de negação de serviço distribuído (DDoS). Use o Azure Front Door ou a Proteção contra DDoS do Azure, dependendo dos protocolos usados pelos pontos de extremidade públicos. |
Proteja sua solução contra um tipo comum de ataque. |
Se o aplicativo exigir conectividade de saída em escala, use o Gateway NAT ou um firewall para fornecer portas SNAT adicionais. | Você pode oferecer suporte a 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 na rede privada de um cliente ou ativos em um provedor de nuvem diferente em uma configuração multinuvem. 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 sobre o 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 seu proprietário, localização e tipo de conectividade. Em seguida, você pode escolher o método apropriado para se conectar a esses pontos de extremidade. As abordagens comuns incluem:
Local do recurso Proprietário Opções de conectividade a serem consideradas Azure Customer - Ponto de extremidade privado (entre locatários de ID do Microsoft Entra)
- Emparelhamento de rede virtual (entre locatários de ID do Microsoft Entra)
- Ponto de extremidade de serviço (entre locatários de ID do Microsoft Entra)
Outro provedor de nuvem ISV ou cliente - VPN site a site
- ExpressRoute
- Internet
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 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 o tráfego permaneça dentro da 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 aumentar com base em 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 e fornecendo algum nível de conectividade privada.
Ponto de extremidade de serviço. Roteia o tráfego para recursos de PaaS por meio da rede de backbone da Microsoft, protegendo 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 em locatários de ID do Microsoft Entra 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 os 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 VPNs (redes virtuais privadas) criam um túnel seguro pela Internet entre duas redes, inclusive 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 e 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 da ID do Microsoft Entra, 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 diferentes locatários 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 ExpressRoute. Para obter mais informações, consulte Conectividade com provedores de nuvem.
Entenda os efeitos da conectividade em sua topologia de 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 ExpressRoute. No entanto, 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 adequadamente, possivelmente implantando uma rede virtual separada para cada cliente.
Entenda as implicações para o planejamento de endereços IP. Algumas abordagens de conectividade fornecem automaticamente a NAT (conversão de endereços de rede), evitando problemas com endereços IP sobrepostos. No entanto, o emparelhamento de rede virtual e o ExpressRoute não executam o 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 de 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 multirregionais ou multinuvem, é 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 se conectar entre redes para priorizar a segurança. Considere o roteamento pela Internet apenas 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 se conectar 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 se conectar entre provedores de nuvem ou redes locais, use VPNs site a site ou ExpressRoute. | Essas tecnologias fornecem conexões seguras entre provedores. |
Implante em ambientes pertencentes a 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, a aplicação da configuração e a implantação de 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 sobre o 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 mínimo de endereço IP usando endereços IP com eficiência e evite codificar intervalos de endereços IP 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ê tiver definido pontos de entrada e saída, avalie o NAT como uma abordagem para eliminar problemas causados por sobreposições de endereços IP.
Forneça acesso à rede para fins de gerenciamento. Revise os recursos que você implanta nos ambientes do cliente e planeje como você os acessará 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 acessá-los de sua própria rede. Considere como você facilita as alterações de aplicativos e recursos, como enviar 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 em aplicativos. Se precisar de mais controle, você pode hospedar um endpoint 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 na 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 sua escalabilidade 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 de 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 de seus clientes com seus outros sistemas. |
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:
- Abordagens de arquitetura para rede em soluções multilocatário
- Modelos de locação
- Topologia de rede hub e spoke
- Considerações de Gateway da NAT do Azure para multilocação
- Abordagens arquitetônicas para integração de locatários e acesso a dados
Próxima etapa
Saiba mais sobre as considerações da plataforma de dados para integridade e desempenho de dados para cargas de trabalho SaaS no Azure.