Análise do conteúdo do corpo POST

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