Migreren van NextAuth.js v4 naar Auth.js v5
Een gids om Logto-integratie te migreren van NextAuth.js v4 naar v5.
NextAuth.js versie 5 is een grote herschrijving van het next-auth
pakket, dat ingrijpende updates brengt die verschillende integraties beïnvloeden, inclusief Logto. Deze gids begeleidt je door het proces van het migreren van je Logto-integratie van NextAuth.js v4 naar Auth.js v5.
We hebben onlangs onze NextAuth snelstartgids bijgewerkt. Bekijk het eens!
De veranderingen begrijpen
Auth.js v5
NextAuth.js v5 introduceert verschillende ingrijpende veranderingen. De belangrijkste verandering die van invloed is op de manier waarop je Logto met je applicatie integreert, is de verandering in "OIDC/OAuth Providers". In de officiële documentatie staat: "Auth.js bouwt nu verder op @auth/core met striktere OAuth/OIDC-specifieke 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 verwijzen naar de officiële migratiegids.
Logto providerconfiguratie
De providerconfiguratie voor Logto is bijgewerkt:
- Het type is veranderd van
oauth
naaroidc
. - De
wellKnown
-endpoint is verwijderd, en je moet in plaats daarvan hetissuer
-veld opgeven. - Het is niet nodig om het ondertekeningsalgoritme
id_token
op te geven. Het ondersteunt nuES384
en dit wordt automatisch gedetecteerd.
Stapsgewijze migratiehandleiding
Werk de providerconfiguratie in je pages/api/auth/[...nextauth].js
bestand bij met de 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 ophalen van de Logto Application Details-pagina, in het veld "Issuer endpoint". Het zou eruit moeten zien als https://xxxx.logto.app/oidc
als je de Logto cloudservice gebruikt.
Verwijder vervolgens het wellKnown
veld.
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 dit wordt automatisch gedetecteerd.
Update het project
Nadat je de providerconfiguratie hebt bijgewerkt, moet je het next-auth
-pakket bijwerken naar v5, volg de officiële migratiegids om het pakket bij te werken en zorg ervoor dat je applicatie werkt zoals verwacht. Zorg ervoor dat je ook de NextAuth snelstartgids raadpleegt.