Analisi dei contenuti del corpo del POST

Questa pagina contiene informazioni sulla configurazione dell'analisi dei contenuti del corpo POST, un funzionalità facoltativa che puoi utilizzare con la sicurezza di Google Cloud Armor criteri.

Per impostazione predefinita, Google Cloud Armor valuta l'intero contenuto di un corpo POST come stringa uniforme (soggetta a limiti di dimensione del corpo) rispetto alle firme nelle regole WAF preconfigurate. Per le richieste che contengono una codifica alternativa come JSON, i componenti strutturali del messaggio (non specificati dall'utente) potrebbero attivare corrispondenze con le firme WAF preconfigurate. Per evitare rumore e ridurre il rischio di falsi positivi, ti consigliamo di configurare Google Cloud Armor per attivare l'analisi alternativa per qualsiasi tipo di contenuto supportato se i tuoi carichi di lavoro protetti eseguono le seguenti operazioni:

  • Gestisci le API REST
  • Utilizzare GraphQL
  • Ricevere richieste con contenuti codificati in JSON.

Puoi abilitare o disabilitare l'analisi dei contenuti del corpo JSON delle richieste POST per ciascun criterio di sicurezza. Quando l'intestazione Content-Type è impostata su application/json, usa il flag --json-parsing in Google Cloud CLI.

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

--json-parsing=[STANDARD | STANDARD_WITH_GRAPHQL | DISABLED]

Il flag è disponibile solo con gcloud compute security-policies update. Tu impossibile creare un nuovo criterio di sicurezza con questa opzione se non crei un criterio di sicurezza in un file e poi importarlo. Per ulteriori informazioni, consulta Importare i criteri di sicurezza.

Utilizzare l'analisi JSON

Nell'esempio seguente, viene configurato un elenco di valori di intestazione Content-Type personalizzati per i quali viene applicata l'analisi alternativa. L'esempio aggiorna criterio di sicurezza POLICY_NAME per abilitare l'analisi JSON e specificare il criterio tipi di contenuti 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"

Utilizzare l'analisi di GraphQL

Per configurare l'analisi di GraphQL, aggiorna il criterio di sicurezza impostando il --json-parsing flag su STANDARD_WITH_GRAPHQL, come nell'esempio seguente:

gcloud compute security-policies update POLICY_NAME \
    --json-parsing STANDARD_WITH_GRAPHQL

Logging

Ogni richiesta HTTP(S) valutata in base a un criterio di sicurezza Google Cloud Armor viene registrata tramite Cloud Logging. I log forniscono dettagli, ad esempio del criterio di sicurezza applicato, la regola di corrispondenza e se la regola è stata in modo forzato. Il logging delle richieste per le nuove risorse di servizio di backend è disattivato per impostazione predefinita. Per assicurarti che le richieste di Google Cloud Armor vengano registrate, devi attivare la registrazione HTTP(S) per ogni servizio di backend protetto da un criterio di sicurezza. Per ulteriori informazioni, consulta Logging e monitoraggio del bilanciatore del carico delle applicazioni esterno globale.

Limitazioni

Tieni presente le seguenti limitazioni quando configuri l'analisi JSON:

  • L'ispezione del corpo POST è limitata ai primi 8 kB. Se il file JSON superi gli 8 kB, verrà applicato Google Cloud Armor l'analisi JSON nei primi 8 kB di contenuti ispezionati da qualsiasi regole WAF preconfigurate.
  • Se l'analizzatore JSON non restituisce risultati, potrebbe essere tentata l'analisi dell'URI. Se L'analizzatore sintattico degli URI non restituisce parametri nome-valore o è solo parziale nome-valore, la stringa intera o parziale potrebbe essere trattata come del parametro per l'ispezione.

Passaggi successivi