Quero usar o AWS WAF para restringir o acesso direto a um Application Load Balancer. Também quero usar o AWS WAF para permitir somente acesso direto por meio do Amazon API Gateway.
Resolução
Para usar o AWS WAF para restringir tráfego direto para um Application Load Balancer e permitir tráfego somente por meio do API Gateway, siga estas etapas.
Adicione um cabeçalho HTTP personalizado
Configure o API Gateway para adicionar um cabeçalho HTTP personalizado com um valor secreto nas solicitações que ele envia ao Application Load Balancer.
Conclua as etapas a seguir:
- Abra o console do API Gateway.
- No painel de navegação, selecione APIs.
- Escolha sua API REST.
- Em Recursos, escolha seu método HTTP. Por exemplo, GET.
- Selecione a guia Solicitação de integração e, em seguida, Editar.
- Expanda a seção de parâmetros de cabeçalhos de solicitação de URL e selecione Adicionar parâmetro de cabeçalhos de solicitação.
Em Nome, insira o nome do cabeçalho. Por exemplo, cabeçalho personalizado.
Em Mapeado de, insira o valor do cabeçalho secreto.
Observação: Certifique-se de colocar o valor do cabeçalho secreto entre aspas simples. Por exemplo, 'valor secreto'.
- Clique em Salvar.
Crie um pacote de proteção e uma regra
Crie um pacote de proteção vazio do AWS WAF associado ao Application Load Balancer. Em seguida, crie uma regra para bloquear solicitações que não tenham o cabeçalho HTTP personalizado com o valor secreto.
Observação: Se você já tiver um pacote de proteção associado ao seu Application Load Balancer, vá para Criar uma regra.
Crie um pacote de proteção
Conclua as etapas a seguir:
- Abra o console do AWS WAF.
- No painel de navegação, selecione AWS WAF.
- Selecione Recursos e pacotes de proteção.
- Em Pacotes de proteção, selecione Criar pacote de proteção.
- Em Conte-nos sobre sua aplicação, selecione uma ou mais categorias de aplicações.
- Escolha seu App Focus.
- Em Selecionar recursos para proteger, clique em Adicionar recursos.
- Selecione Adicionar recursos regionais. Selecione seu Application Load Balancer na lista.
- Em Escolher pacote de proteção, clique em Crie seu próprio pacote a partir de todas as proteções que o AWS WAF oferece. Ignore o painel direito.
- Em Nome e descrição, insira um nome para seu pacote de proteção.
- Clique em Criar pacote de proteção.
Crie uma regra
Conclua as etapas a seguir:
- Abra o console do AWS WAF.
- No painel de navegação, selecione AWS WAF.
- Selecione Recursos e pacotes de proteção.
- Em Pacotes de proteção, selecione o pacote de proteção associado e clique em Exibir e editar ao lado de Regras. Um painel será aberto do lado direito.
- No painel direito, selecione Adicionar regra.
Selecione Regra personalizada e clique em Próximo.
Selecione Regra personalizada novamente e clique em Próximo.
- Para configurar sua regra, configure os seguintes valores:
Em Ação, selecione Bloquear.
Em Nome da regra, insira um nome de regra.
Em Se for uma solicitação, selecione não corresponde à declaração (NOT).
Em Inspecionar, escolha Cabeçalho único.
Em Nome do campo Cabeçalho, insira o nome do cabeçalho personalizado. Por exemplo, cabeçalho personalizado.
Em Tipo de correspondência, escolha Corresponde exatamente à string.
Em string para corresponder, insira o valor do cabeçalho secreto.
Observação: Certifique-se de colocar o valor do cabeçalho secreto entre aspas simples. Por exemplo, 'valor secreto'.
- Selecione Criar regra.
- Se você tiver várias regras no pacote de proteção, selecione Editar ordem das regras no painel direito.
Mova a regra recém-criada para a prioridade mais alta colocando-a no topo.
- Clique em Salvar ordem das regras.
Informações relacionadas
Como integro uma API REST do API Gateway com um Application Load Balancer?