Errore verifica token di autorizzazione soluzione
Se sei qui è perchè hai di certo un bel problema che non riesci a risolvere, ovvero “Errore verifica token di autorizzazione“. Il token ID non può essere convalidato perché è stato firmato utilizzando l’algoritmo HS256 e le applicazioni pubbliche (come un browser) non possono archiviare i segreti. Vediamo quali sono le cause e la soluzione migliore per risolverlo.
A partire da auth0.js versione 9 e Lock versione 11 , quando i token ID vengono firmati con HS256, vengono eliminati e /userinfo
viene effettuata una chiamata a per recuperare le informazioni sull’utente.
La chiamata /userinfo
richiede un token di accesso . Se non chiedi un token di accesso durante l’autenticazione, riceverai il seguente errore: The id_token cannot be validated because it was signed with the HS256 algorithm and public applications (like a browser) can’t store secrets. Please read the associated doc for possible ways to fix this.
Errore verifica token di autorizzazione come risolvere
Esistono due modi per correggere l’errore:
- (CONSIGLIATO) Modificare l’algoritmo di firma dell’applicazione su RS256 anziché HS256.
- Modifica il valore del tuo
responseType
parametro intoken id_token
(invece del valore predefinito), in modo da ricevere un token di accesso nella risposta.
Per modificare l’algoritmo di firma dell’applicazione su RS256 anziché HS256:
- Vai a Dashboard Auth0 > Applicazioni > Applicazioni e selezionare il nome dell’applicazione da visualizzare.
- Scorri fino in fondo alla pagina Impostazioni e seleziona Mostra impostazioni avanzate .
- Selezionare la visualizzazione OAuth , modificare il valore di JsonWebToken Signature Algorithm su RS256 e selezionare Salva modifiche .
Se si procede con questa opzione e si utilizza il token ID per chiamare le API, assicurarsi di modificare il codice del server in modo che convalidi i token utilizzando l’algoritmo RS256 anziché HS256. Tieni presente che l’utilizzo di token ID per chiamare le API non è consigliato.
È possibile decodificare, verificare e generare JWT utilizzando il file Strumento JWT