Como integrar o Google Cloud Armor a outros produtos do Google

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

As seções a seguir discutem como o Google Cloud Armor interage com outros recursos e produtos do Google Cloud.

Regras de firewall da VPC do Google Cloud e da VPC

As políticas de segurança do Google Cloud Armor e as regras de firewall da VPC têm funções diferentes.

Por exemplo, imagine um cenário em que você queira permitir o tráfego somente pelos intervalos CIDR 100.1.1.0/24 e 100.1.2.0/24 para acessar o balanceador de carga HTTP(S) externo global ou o balanceador de carga HTTP(S) externo (clássico). O objetivo é garantir que o tráfego não alcance diretamente as instâncias com carga balanceada do back-end. Em outras palavras, apenas o tráfego externo intermediado pelo balanceador de carga HTTP(S) externo global ou pelo balanceador de carga HTTP(S) externo global (clássico) com uma política de segurança associada deve alcançar as instâncias.

Como usar a política de segurança do Google Cloud Armor com firewalls de entrada
       para restringir o acesso
Como usar a política de segurança do Google Cloud Armor com firewalls de entrada para restringir o acesso (clique para ampliar)

Na ilustração anterior, você atinge os objetivos de segurança configurando a implantação do Google Cloud da seguinte maneira:

  1. Crie dois grupos de instâncias, um na região us-west1 e outro na região europe-west1.
  2. Implante instâncias de aplicativos de back-end nas VMs nos grupos de instâncias.
  3. Crie um balanceador de carga HTTP(S) externo global ou balanceador de carga HTTP(S) externo global (clássico) no nível Premium. Configure um mapa de URL simples e apenas um serviço de back-end que esteja nos dois grupos de instâncias que você criou na etapa anterior. Verifique se a regra de encaminhamento do balanceador de carga usa o endereço IP externo 120.1.1.1.
  4. Configure uma política de segurança do Google Cloud Armor que permita o tráfego de 100.1.1.0/24 e 100.1.2.0/24 e negue qualquer outro tráfego.
  5. Associe esta política ao serviço de back-end do balanceador de carga. Para instruções, consulte Como configurar políticas de segurança. Os balanceadores de carga HTTP(S) externos com mapas de URL mais complexos podem fazer referência a vários serviços de back-end. É possível associar a política de segurança a um ou mais serviços de back-end, conforme necessário.
  6. Configure as regras de firewall de permissão de entrada para permitir o tráfego do balanceador de carga HTTP(S) externo global ou balanceador de carga HTTP(S) externo global (clássico). Saiba mais em Regras de firewall.

Google Cloud Armor com balanceamento de carga HTTP(S) e IAP

O Identity-Aware Proxy (IAP) verifica a identidade de um usuário e determina se esse usuário pode ter permissão para acessar um aplicativo. Para ativar o IAP para o balanceador de carga HTTP(S) externo global ou para o balanceador de carga HTTP(S) externo global (clássico), ative-o nos serviços de back-end do balanceador de carga. Da mesma forma, as políticas de segurança de borda do Google Cloud Armor são anexadas aos serviços de back-end de um balanceador de carga HTTP(S) externo global ou balanceador de carga HTTP(S) externo global (clássico).

Se as políticas de segurança e o IAP do Google Cloud Armor estiverem ativados para um serviço de back-end de um balanceador de carga HTTP(S) externo global ou de um balanceador de carga HTTP(S) externo global (clássico), a avaliação do IAP acontece primeiro. Se o IAP bloquear uma solicitação, o Google Cloud Armor não avaliará a solicitação. Se o IAP autenticar uma solicitação, o Google Cloud Armor avaliará a solicitação. A solicitação será bloqueada se uma política de segurança do Google Cloud Armor produzir uma decisão de negação.

Como usar listas de proibições e endereços de IP com o IAP.
Como usar listas de proibições e endereços de IP com o IAP (clique para ampliar)

Saiba mais sobre o IAP e as configurações relacionadas na documentação do Identity-Aware Proxy.

Google Cloud Armor com implantações híbridas

Em uma implantação híbrida, um balanceador de carga HTTP(S) externo global ou um balanceador de carga HTTP(S) externo global (clássico) precisa de acesso a um aplicativo ou fonte de conteúdo executado fora do Google Cloud, por exemplo, infraestrutura de outro provedor de nuvem. Use o Google Cloud Armor para proteger essas implantações.

No diagrama a seguir, o balanceador de carga possui dois serviços de back-end. Um deles tem um grupo de instâncias como back-end. O outro serviço possui um NEG da Internet como back-end. Esse NEG está associado a um aplicativo que está sendo executado no data center de um provedor terceirizado.

Google Cloud Armor para implantações híbridas
Google Cloud Armor para implantações híbridas (clique para ampliar)

Quando você anexa uma política de segurança do Google Cloud Armor ao serviço de back-end que tem um NEG de Internet como back-end, o Google Cloud Armor inspeciona cada solicitação L7 que chega ao balanceador de carga HTTP(S) externo global ou do balanceador de carga HTTP(S) externo global (clássico) destinado a esse serviço de back-end.

A proteção do Google Cloud Armor para implantações híbridas está sujeita às mesmas limitações que se aplicam aos NEGs da Internet.

Google Cloud Armor com Entrada do Google Kubernetes Engine (GKE)

Depois de configurar uma política de segurança do Google Cloud Armor, use o Kubernetes Ingress para ativá-lo com o GKE.

Você pode referenciar sua política de segurança com um recurso BackendConfig adicionando o nome da sua política de segurança ao BackendConfig. O manifesto BackendConfig a seguir especifica uma política de segurança chamada example-security-policy:

apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
  namespace: cloud-armor-how-to
  name: my-backendconfig
spec:
  securityPolicy:
    name: "example-security-policy"

Para mais informações sobre os recursos da Entrada, consulte Como configurar os recursos de entrada.

Google Cloud Armor com Cloud CDN

Para proteger os servidores de origem da CDN, use o Google Cloud Armor com o Cloud CDN. O Google Cloud Armor protege o servidor de origem da CDN de ataques de aplicativos, atenua os 10 principais riscos do OWASP e aplica políticas de filtragem da camada 7. Há dois tipos de política de segurança que afetam como o Google Cloud Armor funciona com o Cloud CDN: políticas de segurança de borda e políticas de segurança de back-end.

Políticas de segurança de borda

É possível usar políticas de segurança de borda para serviços de back-end ativados pelo Cloud CDN e buckets de back-end do Cloud Storage por trás do balanceador de carga HTTP(S) externo global ou do balanceador de carga HTTP(S) externo global (clássico). Use as políticas de segurança de borda para filtrar solicitações antes que o conteúdo seja exibido no cache.

Políticas de segurança de back-end

Quando as políticas de segurança de back-end do Google Cloud Armor são aplicadas a serviços de back-end com o Cloud CDN ativado, elas se aplicam apenas às solicitações roteadas ao serviço de back-end. Essas solicitações incluem solicitações de conteúdo dinâmico e falhas de cache, ou seja, solicitações que perdem ou ignoram o cache do Cloud CDN.

As solicitações são sempre avaliadas primeiro em relação às políticas de segurança de borda. Para solicitações permitidas pelas políticas de segurança de borda, a solicitação é exibida ao usuário e não é avaliada em relação à política de segurança de back-end. Caso contrário, a solicitação será avaliada novamente, desta vez em relação à política de segurança do back-end.

O diagrama a seguir mostra exclusivamente como as políticas de segurança de back-end funcionam com as origens do Cloud CDN, depois que as solicitações forem permitidas pelas políticas de segurança de borda.

Como usar as políticas de segurança de back-end do Google Cloud Armor com o Cloud CDN.
Políticas de segurança de back-end do Google Cloud Armor com Cloud CDN (clique para ampliar)

Para mais informações sobre o Cloud CDN, consulte a documentação do Cloud CDN.

Google Cloud Armor com Cloud Run, App Engine ou Cloud Functions

Use as políticas de segurança do Google Cloud Armor com um back-end NEG sem servidor que direciona para um serviço do Cloud Run, App Engine ou Cloud Functions.

No entanto, ao usar o Google Cloud Armor com NEGs sem servidor e o Cloud Functions, é necessário tomar medidas especiais para garantir que todo o acesso ao endpoint sem servidor seja filtrado por meio de uma política de segurança do Google Cloud Armor.

Os usuários que têm o URL padrão de um serviço do Cloud Functions podem ignorar o balanceador de carga e ir diretamente para o URL. Isso ignora as políticas de segurança do Google Cloud Armor. Não é possível desativar os URLs que o Google Cloud atribui automaticamente aos serviços do Cloud Functions.

Para garantir que os controles de acesso sejam aplicados a todo o tráfego de entrada, use internal-and-gclb ao configurar o Cloud Functions, o que permite apenas o tráfego interno e tráfego enviado para um endereço IP público exposto pelo balanceador de carga HTTP(S) externo global ou balanceador de carga HTTP(S) externo global (clássico). O tráfego enviado para cloudfunctions.net ou qualquer outro domínio personalizado configurado por meio do Cloud Functions é bloqueado. Isso impede que os usuários burlem qualquer controle de acesso (como as políticas de segurança do Google Cloud Armor) configurado pelo balanceador de carga HTTP(S) externo global ou balanceador de carga HTTP(S) externo global (clássico).

Saiba mais sobre NEGs sem servidor em Visão geral dos grupos de endpoints de rede sem servidor e Como configurar NEGs sem servidor.

A seguir