Nederlands
  • js
  • next
  • next-auth
  • auth.js

Migreren van NextAuth.js v4 naar Auth.js v5

Een gids om de Logto-integratie te migreren van NextAuth.js v4 naar v5.

Sijie
Sijie
Developer

NextAuth.js versie 5 is een grote herschrijving van het next-auth-pakket, wat belangrijke updates met zich meebrengt die verschillende integraties beïnvloeden, waaronder Logto. Deze handleiding begeleidt je door het proces van het migreren van je Logto-integratie van NextAuth.js v4 naar Auth.js v5.

Begrijpen van de Wijzigingen

Auth.js v5

NextAuth.js v5 introduceert verschillende breaking changes, de belangrijkste wijziging die van invloed is op de manier waarop je Logto met je applicatie integreert, is de wijziging van "OIDC/OAuth Providers". In de officiële documentatie staat "Auth.js bouwt nu voort op @auth/core met striktere OAuth/OIDC specificatie-naleving, wat sommige bestaande OAuth-providers kan breken", voor Logto-gebruikers betekent dit dat je de providerconfiguratie moet bijwerken.

Voor meer informatie over de wijzigingen kun je de officiële migratiegids raadplegen.

Logto providerconfiguratie

De providerconfiguratie voor Logto is bijgewerkt:

  • Het type is gewijzigd van oauth naar oidc.
  • Het wellKnown endpoint is verwijderd, en je moet in plaats daarvan het issuer veld opgeven.
  • Het is niet meer nodig om het id_token ondertekeningsalgoritme op te geven, het ondersteunt nu ES384 en dat wordt automatisch gedetecteerd.

Stapsgewijze migratiehandleiding

Werk de providerconfiguratie bij in je pages/api/auth/[...nextauth].js bestand met het nieuwe configuratiesjabloon:

Stap 1: Wijzig het providertype

Wijzig het providertype van oauth naar oidc.

Stap 2: Voeg het issuer veld toe

Voeg het issuer veld toe aan de providerconfiguratie. Je kunt de issuer-waarde krijgen van de Logto Application Details pagina, in het veld "Issuer endpoint". Het zou er als volgt uit moeten zien https://xxxx.logto.app/oidc als je gebruik maakt van de Logto clouddienst.

En dan kun je het wellKnown veld verwijderen.

Stap 3: Verwijder het id_token_signed_response_alg ondertekeningsalgoritme

Je hoeft het id_token_signed_response_alg ondertekeningsalgoritme niet langer op te geven in de providerconfiguratie. Het ondersteunt nu ES384 en dat wordt automatisch gedetecteerd.

Werk het project bij

Na het bijwerken van de providerconfiguratie moet je het next-auth pakket updaten naar v5, volg de officiële migratiegids om het pakket bij te werken en zorg ervoor dat je applicatie werkt zoals verwacht.