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:

  1. Verifica le dimensioni del set JWK remoto fornito dal provider di identità. Se supera i 51.200 byte, procedere con i passaggi successivi.
  2. 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).
  3. Nella configurazione OidcAuthenticationHandler, impostare il parametro jwkSetHttpSizeLimit in modo che corrisponda al nuovo limite di dimensioni (ad esempio, 102400).
  4. Implementa la configurazione aggiornata e la proprietà JVM negli ambienti rilevanti utilizzando la pipeline di distribuzione standard.
  5. Assicurati che la pipeline di distribuzione sia stata completata correttamente e che la nuova versione sia attiva.
  6. Verifica l’autenticazione OIDC per confermare che l’errore non si verifica più.
  7. Controlla i registri per verificare che il set JWK sia recuperato ed elaborato senza errori di limite di dimensione.
recommendation-more-help
experience-cloud-kcs-help-kbarticles