Limitazioni delle query GraphQL dovute all’aggiornamento 24.0 di graphql-java
Scopri come risolvere errori Denial of Service nelle query GraphQL in seguito all’aggiornamento di graphql-java alla versione 24.0
Descrizione description
Ambiente
Adobe Experience Manager
Problema/Sintomi
Con l'aggiornamento di graphql-java alla versione 24.0, è stato introdotto un nuovo parametro di configurazione per la configurazione OSGI Apache Sling Default GraphQL Query Executor con l'obiettivo di evitare attacchi Denial of Service:
Numero massimo di campi: questa configurazione ha un valore predefinito di 100.000 (100.000) che dovrebbe essere raramente superato, ma è ancora possibile per i clienti con query molto complesse e come tale un numero elevato di campi nella query.
Risoluzione resolution
Se si verifica un errore "Il numero massimo di campi è stato superato", è possibile aumentare il limite del valore del parametro di configurazione.
A tale scopo, definire una variabile di ambiente personalizzata AEM_HEADLESS_GRAPHQL_MAX_FIELD_COUNT e assegnarvi il limite superiore.