L’autenticazione OIDC di AEM as a Cloud Service non riesce a causa del limite di dimensioni impostato per JWK
Questo articolo descrive come risolvere gli errori di autenticazione OIDC in Adobe Experience Manager as a Cloud Service quando il set JWK remoto supera il limite di dimensioni di input predefinito.
Descrizione description
Ambiente
- Adobe Experience Manager as a Cloud Service (tutte le versioni)
Problema/Sintomi
- Richieste di autenticazione OIDC non riuscite.
- Nei registri viene visualizzato il seguente errore:
ERRORE org.apache.sling.auth.oauth_client.impl.OidcAuthenticationHandler Impossibile convalidare il token: impossibile recuperare il set JWK remoto: è stato superato il limite di input configurato di 51200 byte
- L’errore persiste anche dopo l’aggiornamento dei file di configurazione, a meno che non venga applicata la proprietà di sistema JVM corretta.
- La dimensione del set JWK del provider di identità è maggiore di 51.200 byte (ad esempio, circa 58 KB).
- Il problema è riproducibile negli ambienti Dev, Stage e Prod.
Causa
Il limite predefinito per le dimensioni di input per i set JWK remoti nella libreria Nimbus DS è di 51.200 byte. Se il set JWK del provider di identità supera questo limite, la convalida del token non riesce, a meno che il limite non venga aumentato tramite la proprietà e la configurazione del sistema JVM.
Risoluzione resolution
Per risolvere il problema di autenticazione OIDC, effettua le seguenti operazioni:
- Verifica le dimensioni del set JWK remoto fornito dal provider di identità. Se supera i 51.200 byte, procedere con i passaggi successivi.
- Aggiungi o aggiorna la seguente proprietà di sistema JVM negli ambienti Cloud di destinazione:
-Dnimbusds.jose.jwkset.maxSize=102400(regola il valore se il set JWK è più grande, fino a un massimo di 10 MB). - Nella configurazione OidcAuthenticationHandler, impostare il parametro
jwkSetHttpSizeLimitin modo che corrisponda al nuovo limite di dimensioni (ad esempio,102400). - Implementa la configurazione aggiornata e la proprietà JVM negli ambienti rilevanti utilizzando la pipeline di distribuzione standard.
- Assicurati che la pipeline di distribuzione sia stata completata correttamente e che la nuova versione sia attiva.
- Verifica l’autenticazione OIDC per confermare che l’errore non si verifica più.
- Controlla i registri per verificare che il set JWK sia recuperato ed elaborato senza errori di limite di dimensione.