Registro detalhado

Nesta página, você verá informações sobre como configurar a geração de registros detalhados, um recurso opcional que pode ser usado com as políticas de segurança do Google Cloud Armor.

É possível ajustar o nível de detalhe registrado nos registros. Recomendamos que você ative o registro detalhado apenas ao criar uma política, fazer alterações ou solucionar problemas. Se você ativar o registro detalhado, ele estará em vigor para regras no modo de visualização, bem como para regras ativas (não visualizadas) durante as operações padrão.

Considere um exemplo em que não é possível saber por que uma regra WAF pré-configurada foi acionada por uma solicitação específica. Os logs de eventos padrão do Google Cloud Armor contêm a regra que foi acionada, bem como a subassinatura. No entanto, talvez seja necessário identificar os detalhes da solicitação recebida que acionou a regra para fins de solução de problemas, validação ou ajuste de regras. Esse é um exemplo. Recomendamos que você ative o registro detalhado.

É possível configurar o nível de geração de registros do Google Cloud Armor para ativar uma geração de registros mais detalhada para cada política de segurança usando a sinalização --log-level na CLI gcloud.

Por padrão, esta opção está desativada. A sintaxe da sinalização é a seguinte:

--log-level=[NORMAL | VERBOSE]

A sinalização só está disponível com o uso do comando 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 Importar políticas de segurança.

Exemplo:

  gcloud compute security-policies update ca-policy-1 \
      --log-level=VERBOSE
  

Recomendamos que você ative o registro detalhado ao criar uma política, fazer alterações ou solucionar problemas.

Valores registrados quando o registro detalhado está ativado

Quando o registro detalhado está ativado, mais informações são registradas no registro de solicitação de balanceamento de carga que é enviado para o Cloud Logging. Os seguintes campos adicionais aparecem no registro de solicitação quando o registro detalhado está ativado:

  • matchedFieldType (string): é o tipo de campo que gera a correspondência.

    • ARG_NAMES
    • ARG_VALUES
    • BODY

      • Quando o campo BODY está no registro, significa que todo o corpo da postagem corresponde a uma regra.
    • COOKIE_VALUES

    • COOKIE_NAMES

    • FILENAME

    • HEADER_VALUES

    • RAW_URI

    • REFERER

    • REQUEST_LINE

    • URI

    • USER_AGENT

    • HEADER_NAMES

    • ARGS_GET

    • X_FILENAME

    • ARG_NAME_COUNT

    • TRANSFER_ENCODING

    • REQUEST_METHOD

  • matchedFieldName (string): se isso corresponder à parte do valor de um par de chave-valor, o valor da chave será armazenado nesse campo. Caso contrário, ele estará vazio.

  • matchedFieldValue (string): um prefixo de até 16 bytes para a parte do campo que causa a correspondência.

  • matchedFieldLength (número inteiro): o comprimento total do campo.

  • matchedOffset (número inteiro): o deslocamento inicial no campo que causa a correspondência.

  • matchedLength (inteiro): a duração da correspondência.

Por exemplo, é possível enviar essa solicitação para um projeto em que as regras WAF de injeção SQL estejam ativadas:

curl http://IP_ADDR/?sql_table=abc%20pg_catalog%20xyz

A entrada no Explorador de registros seria assim:

enforcedSecurityPolicy: {
 name: "user-staging-sec-policy"
 priority: 100
 configuredAction: "DENY"
 outcome: "DENY
 preconfiguredExprIds: [
   0: "owasp-crs-v030001-id942140-sqli"
  ]
matchedFieldType: "ARG_VALUES"
matchedFieldName: "sql_table"
matchedFieldValue: "pg_catalog"
matchedFieldLength: 18
matchedOffset: 4
matchedLength: 10
}

Como manter a privacidade quando o registro detalhado está ativado

Quando você usa o registro detalhado, o Google Cloud Armor registra snippets dos elementos das solicitações recebidas que acionaram uma determinada regra WAF pré-configurada. Esses snippets podem conter partes de cabeçalhos de solicitação, parâmetros de solicitação ou elementos do corpo do POST. É possível que um snippet contenha dados sensíveis, como um endereço IP ou outros dados sensíveis da solicitação recebida, dependendo do que está nos cabeçalhos ou no corpo da solicitação e do que aciona a regra WAF.

Ao ativar a geração de registros detalhados, você corre o risco de acumular dados potencialmente sensíveis nos registros do Logging. Recomendamos que você ative o registro detalhado apenas durante a criação e validação da regra ou para a solução de problemas. Durante as operações normais, recomendamos que você mantenha o registro detalhado desativado.

A seguir