Logging dettagliato

Questa pagina contiene informazioni sulla configurazione del logging dettagliato, una funzionalità facoltativa che puoi utilizzare con i criteri di sicurezza di Google Cloud Armor.

Puoi regolare il livello di dettaglio registrato nei log. Ti consigliamo di abilitare il logging dettagliato solo quando crei un criterio, apporti modifiche a un criterio o risolvi i problemi relativi a un criterio. Se abiliti il logging dettagliato, questo verrà applicato alle regole in modalità di anteprima e a quelle attive (non visualizzate in anteprima) durante le operazioni standard.

Considera un esempio in cui non sei in grado di spiegare perché una regola WAF preconfigurata è stata attivata da una determinata richiesta. I log eventi predefiniti di Google Cloud Armor contengono la regola che è stata attivata, nonché la sottofirma. Tuttavia, potresti dover identificare i dettagli della richiesta in entrata che ha attivato la regola per la risoluzione dei problemi, la convalida delle regole o l'ottimizzazione delle regole. Questo è un esempio. Ti consigliamo di abilitare il logging dettagliato.

Puoi configurare il livello di logging di Google Cloud Armor per abilitare un logging più dettagliato per ciascun criterio di sicurezza utilizzando il flag --log-level in gcloud CLI.

Per impostazione predefinita, questa opzione è disattivata. La sintassi del flag è la seguente:

--log-level=[NORMAL | VERBOSE]

Il flag è disponibile solo usando il comando gcloud compute security-policies update. Non puoi creare un nuovo criterio di sicurezza con questa opzione, a meno che non crei un criterio di sicurezza in un file e poi lo importi. Per maggiori informazioni, consulta Importare i criteri di sicurezza.

Ad esempio:

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

Ti consigliamo di attivare il logging dettagliato quando crei un criterio, apporti modifiche a un criterio o risolvi i problemi relativi a un criterio.

Valori registrati quando il logging dettagliato è abilitato

Quando il logging dettagliato è abilitato, ulteriori informazioni vengono registrate nel log delle richieste di bilanciamento del carico inviato a Cloud Logging. I seguenti campi aggiuntivi vengono visualizzati nel log delle richieste quando il logging dettagliato è abilitato:

  • matchedFieldType (stringa): è il tipo di campo che genera la corrispondenza.

    • ARG_NAMES
    • ARG_VALUES
    • BODY

      • Se il campo BODY è nel log, significa che l'intero corpo del post corrisponde a una regola.
    • 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 (stringa): se corrisponde alla parte del valore di una coppia chiave-valore, la coppia chiave-valore viene memorizzata in questo campo. In caso contrario, è vuoto.

  • matchedFieldValue (stringa): un prefisso di massimo 16 byte per la parte del campo che causa la corrispondenza.

  • matchedFieldLength (numero intero): la lunghezza totale del campo.

  • matchedOffset (numero intero): l'offset iniziale all'interno del campo che causa la corrispondenza.

  • matchedLength (numero intero): la durata della corrispondenza.

Ad esempio, potresti inviare questa richiesta a un progetto in cui sono abilitate le regole WAF SQL injection:

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

La voce in Esplora log sarà simile alla seguente:

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
}

Garantire la privacy quando il logging dettagliato è attivo

Quando utilizzi il logging dettagliato, Google Cloud Armor registra snippet degli elementi delle richieste in entrata che hanno attivato una determinata regola WAF preconfigurata. Questi snippet possono contenere parti di intestazioni della richiesta, parametri della richiesta o elementi del corpo del POST. È possibile che uno snippet contenga dati sensibili come un indirizzo IP o altri dati sensibili della richiesta in entrata, a seconda del contenuto delle intestazioni o del corpo della richiesta e di ciò che attiva la regola WAF.

Se abiliti il logging dettagliato, tieni presente che esiste il rischio di accumulare dati potenzialmente sensibili nei log di Logging. Ti consigliamo di abilitare il logging dettagliato solo durante la creazione e la convalida delle regole o per la risoluzione dei problemi. Durante il normale funzionamento, ti consigliamo di lasciare disabilitato il logging dettagliato.

Passaggi successivi