Migration de NextAuth.js v4 à Auth.js v5
Un guide pour migrer l'intégration Logto de NextAuth.js v4 à v5.
Un guide pour migrer l'intégration Logto de NextAuth.js v4 à v5.
NextAuth.js version 5 est une réécriture majeure du package next-auth, qui apporte des mises à jour importantes affectant diverses intégrations, y compris Logto. Ce guide vous guidera à travers le processus de migration de votre intégration Logto de NextAuth.js v4 à Auth.js v5.
Nous avons récemment mis à jour notre Guide de démarrage rapide pour NextAuth. Consultez-le !
NextAuth.js v5 introduit plusieurs changements importants, la principale modification affectant la façon dont vous intégrez Logto à votre application est le changement concernant les "Fournisseurs OIDC/OAuth". Dans la documentation officielle, il est mentionné "Auth.js repose désormais sur @auth/core avec une conformité plus stricte aux spécifications OAuth/OIDC, ce qui pourrait casser certains fournisseurs OAuth existants", pour les utilisateurs de Logto, cela signifie que vous devez mettre à jour la configuration du fournisseur.
Pour plus d'informations sur les changements, vous pouvez vous référer au guide de migration officiel.
La configuration du fournisseur pour Logto a été mise à jour :
oauth à oidc.wellKnown a été supprimé, et vous devez fournir le champ issuer à la place.id_token, il prend désormais en charge ES384 et il sera automatiquement détecté.Mettez à jour la configuration du fournisseur dans votre fichier pages/api/auth/[...nextauth].js avec le nouveau modèle de configuration :
Changez le type de fournisseur de oauth à oidc.
Ajoutez le champ issuer à la configuration du fournisseur. Vous pouvez obtenir la valeur de l'émetteur depuis la page Détails de l'application Logto, dans le champ "Point d'entrée de l'émetteur". Cela devrait ressembler à https://xxxx.logto.app/oidc si vous utilisez le service cloud Logto.
Ensuite, vous pouvez supprimer le champ wellKnown.
id_token_signed_response_algVous n'avez plus besoin de spécifier l'algorithme de signature id_token_signed_response_alg dans la configuration du fournisseur. Il prend désormais en charge ES384 et il sera automatiquement détecté.
Après avoir mis à jour la configuration du fournisseur, vous devez mettre à jour le package next-auth à la version v5, suivez le guide de migration officiel pour mettre à jour le package et assurez-vous que votre application fonctionne comme prévu. Assurez-vous de vous référer également au Guide de démarrage rapide pour NextAuth.