Migracja z NextAuth.js v4 do Auth.js v5
Przewodnik dotyczący migracji integracji Logto z NextAuth.js v4 do v5.
NextAuth.js wersja 5 to duża przeróbka pakietu next-auth
, która wprowadza zmiany przerywające działanie różnych integracji, w tym Logto. Ten przewodnik przeprowadzi cię przez proces migracji Twojej integracji Logto z NextAuth.js v4 do Auth.js v5.
Niedawno zaktualizowaliśmy nasz przewodnik szybkiego startu NextAuth. Sprawdź to!
Zrozumienie zmian
Auth.js v5
NextAuth.js v5 wprowadza kilka zmian przerywających działanie, główną zmianą wpływającą na sposób integracji Logto z aplikacją jest zmiana w "Dostawcach OIDC/OAuth". W oficjalnej dokumentacji napisano: "Auth.js teraz opiera się na @auth/core z bardziej rygorystycznym przestrzeganiem specyfikacji OAuth/OIDC, co może zakłócić działanie niektórych istniejących dostawców OAuth", dla użytkowników Logto oznacza to konieczność zaktualizowania konfiguracji dostawcy.
Więcej informacji na temat zmian możesz znaleźć w oficjalnym przewodniku migracji.
Konfiguracja dostawcy Logto
Konfiguracja dostawcy Logto została zaktualizowana:
- Typ został zmieniony z
oauth
naoidc
. - Endpoint
wellKnown
został usunięty i trzeba podać poleissuer
. - Nie ma potrzeby podawania algorytmu podpisywania tokenu
id_token
, teraz wspieraES384
i będzie automatycznie wykrywany.
Przewodnik krok po kroku do migracji
Zaktualizuj konfigurację dostawcy w pliku pages/api/auth/[...nextauth].js
za pomocą nowego szablonu konfiguracji:
Krok 1: Zmień typ dostawcy
Zmień typ dostawcy z oauth
na oidc
.
Krok 2: Dodaj pole issuer
Dodaj pole issuer
do konfiguracji dostawcy. Możesz uzyskać wartość issuer z Logto Application Details page, w polu "Issuer endpoint". Powinno to wyglądać jak https://xxxx.logto.app/oidc
, jeśli korzystasz z usługi w chmurze Logto.
Następnie możesz usunąć pole wellKnown
.
Krok 3: Usuń algorytm podpisywania id_token_signed_response_alg
Nie musisz już określać algorytmu podpisywania id_token_signed_response_alg
w konfiguracji dostawcy. Teraz wspiera ES384
i będzie automatycznie wykrywany.
Aktualizacja projektu
Po zaktualizowaniu konfiguracji dostawcy, musisz zaktualizować pakiet next-auth
do wersji v5, postępując zgodnie z oficjalnym przewodnikiem migracji aby zaktualizować pakiet i upewnić się, że Twoja aplikacja działa zgodnie z oczekiwaniami. Upewnij się również, że odwołujesz się do przewodnika szybkiego startu NextAuth.