Esta página contém informações sobre como configurar a análise do conteúdo do corpo do POST, um recurso opcional que pode ser usado com suas políticas de segurança do Google Cloud Armor.
Por padrão, o Google Cloud Armor avalia todo o conteúdo de um corpo POST como um string uniforme (sujeita a limitações de tamanho do corpo) com as assinaturas nas regras de WAF pré-configuradas. Para solicitações que contêm codificação alternativa, como JSON, os componentes estruturais da mensagem (não especificados pelo usuário) poderiam acionar correspondências com as assinaturas WAF predefinidas. Para evitar ruídos e reduzir o risco de falsos positivos, recomendamos que você configure o Google Cloud Armor para ativar a análise alternativa de qualquer Content-Type compatível se as cargas de trabalho protegidas fizerem o seguinte:
- Exibir APIs REST
- Usar o GraphQL
- Receber solicitações com conteúdo codificado em JSON.
É possível ativar ou desativar a análise do conteúdo do corpo JSON das solicitações POST para
cada política de segurança. Quando o cabeçalho Content-Type
estiver definido como
application/json
, use a sinalização --json-parsing
na Google Cloud CLI.
Por padrão, esta opção está desativada. A sintaxe da sinalização é a seguinte:
--json-parsing=[STANDARD | STANDARD_WITH_GRAPHQL | DISABLED]
A sinalização está disponível apenas com gcloud compute security-policies update
. Não
é possível criar uma nova política de segurança com essa opção, a menos que você crie uma
política de segurança em um arquivo e importe esse arquivo. Para mais informações, consulte
Como importar políticas de segurança.
Usar análise JSON
No exemplo abaixo, você configura uma lista de cabeçalhos Content-Type
personalizados.
valores para os quais a análise alternativa é aplicada. O exemplo atualiza a
política de segurança POLICY_NAME para ativar a análise JSON e especifica os
tipos de conteúdo application/json
, application/vnd.api+json
,
application/vnd.collection+json
e application/vnd.hyper+json
:
gcloud compute security-policies update POLICY_NAME \ --json-parsing STANDARD \ --json-custom-content-types "application/json,application/vnd.api+json,application/vnd.collection+json,application/vnd.hyper+json"
Usar análise GraphQL
Para configurar a análise do GraphQL, atualize a política de segurança e defina a
flag --json-parsing
como STANDARD_WITH_GRAPHQL
, como no exemplo abaixo:
gcloud compute security-policies update POLICY_NAME \ --json-parsing STANDARD_WITH_GRAPHQL
Geração de registros
Cada solicitação HTTP(S) avaliada em relação a uma política de segurança do Google Cloud Armor é registrada pelo Cloud Logging. Os registros fornecem detalhes como o nome da política de segurança aplicada, a regra de correspondência e se a regra foi aplicada. O registro de solicitações para novos recursos de serviço de back-end é desativado por padrão. Para garantir que as solicitações do Google Cloud Armor sejam registradas, ative a geração de registros HTTP(S) para cada serviço de back-end protegido por uma política de segurança. Para mais informações, consulte Geração de registros e monitoramento do balanceador de carga de aplicativo externo global.
Limitações
Considere as seguintes limitações ao configurar a análise JSON:
- A inspeção do corpo POST ainda está limitada aos primeiros 8 KB. Se o formato JSON for maior do que 8 KB, o Google Cloud Armor será aplicado Análise JSON dos primeiros 8 KB de conteúdo usado que é inspecionado por qualquer regras pré-configuradas de WAF.
- Se o analisador JSON não retornar um resultado, poderá ser feita uma análise de URI. Se o analisador de URI não retornar nenhum parâmetro de nome-valor ou apenas parâmetros parciais de nome-valor, a string inteira ou parcial vai poder ser tratada como o nome do parâmetro para a inspeção.
A seguir
- Configurar políticas de segurança do Google Cloud Armor
- Saiba mais sobre a geração de registros de solicitações.