Migrazione da NextAuth.js v4 ad Auth.js v5
Una guida per migrare l'integrazione Logto da NextAuth.js v4 a v5.
La versione 5 di NextAuth.js è una riscrittura importante del pacchetto next-auth
, che porta aggiornamenti radicali che influenzano varie integrazioni, incluso Logto. Questa guida ti guiderà attraverso il processo di migrazione della tua integrazione Logto da NextAuth.js v4 ad Auth.js v5.
Abbiamo recentemente aggiornato la nostra guida rapida di NextAuth. Dai un'occhiata!
Comprendere le modifiche
Auth.js v5
NextAuth.js v5 introduce diverse modifiche radicali, la principale modifica che influenza il modo in cui integri Logto con la tua applicazione è il cambiamento dei "Provider OIDC/OAuth". Nella documentazione ufficiale, si dice che "Auth.js ora si basa su @auth/core con una conformità più rigorosa alle specifiche OAuth/OIDC, il che potrebbe interrompere alcuni provider OAuth esistenti", per gli utenti Logto, questo significa che è necessario aggiornare la configurazione del provider.
Per ulteriori informazioni sulle modifiche, puoi consultare la guida di migrazione ufficiale.
Configurazione del provider Logto
La configurazione del provider per Logto è stata aggiornata:
- Il tipo è stato cambiato da
oauth
aoidc
. - L'endpoint
wellKnown
è stato rimosso e devi fornire il campoissuer
al suo posto. - Non è necessario specificare l'algoritmo di firma del
id_token
, ora supportaES384
e verrà rilevato automaticamente.
Guida passo passo alla migrazione
Aggiorna la configurazione del provider nel tuo file pages/api/auth/[...nextauth].js
con il nuovo modello di configurazione:
Passo 1: Cambia il tipo di provider
Cambia il tipo di provider da oauth
a oidc
.
Passo 2: Aggiungi il campo issuer
Aggiungi il campo issuer
alla configurazione del provider. Puoi ottenere il valore dell'issuer dalla pagina dei Dettagli dell'Applicazione Logto, nel campo "Issuer endpoint". Dovrebbe apparire come https://xxxx.logto.app/oidc
se stai utilizzando il servizio cloud di Logto.
E poi puoi rimuovere il campo wellKnown
.
Passo 3: Rimuovi l'algoritmo di firma id_token_signed_response_alg
Non devi più specificare l'algoritmo di firma id_token_signed_response_alg
nella configurazione del provider. Ora supporta ES384
e verrà rilevato automaticamente.
Aggiorna il progetto
Dopo aver aggiornato la configurazione del provider, devi aggiornare il pacchetto next-auth
alla v5, segui la guida di migrazione ufficiale per aggiornare il pacchetto e assicurati che la tua applicazione funzioni come previsto. Assicurati anche di fare riferimento alla guida rapida di NextAuth.