Migracja z NextAuth.js v4 do Auth.js v5
Poradnik dotyczący migracji integracji Logto z NextAuth.js v4 do v5.
Wersja 5 NextAuth.js to zasadnicza przebudowa pakietu next-auth
, która przynosi przełomowe aktualizacje wpływające na różne integracje, w tym Logto. Ten przewodnik przeprowadzi cię przez proces migracji integracji Logto z NextAuth.js v4 do Auth.js v5.
Zrozumienie zmian
Auth.js v5
NextAuth.js v5 wprowadza kilka zmian, które mogą mieć wpływ na sposób, w jaki integrujesz Logto ze swoją aplikacją. Najważniejszą zmianą jest zmiana sposobu integracji dostawców "OIDC/OAuth". W oficjalnej dokumentacji znajduje się zapis: "Auth.js teraz opiera się na @auth/core z bardziej rygorystyczną zgodnością ze specyfikacją OAuth/OIDC, co może powodować niezgodności w istniejących dostawcach OAuth". Dla użytkowników Logto oznacza to konieczność aktualizacji konfiguracji dostawcy.
Więcej informacji na temat zmian można znaleźć w oficjalnym przewodniku po migracji.
Konfiguracja dostawcy Logto
Konfiguracja dostawcy dla Logto została zaktualizowana:
- Typ został zmieniony z
oauth
naoidc
. - Punkt końcowy
wellKnown
został usunięty i należy teraz podać poleissuer
. - Nie ma potrzeby określania algorytmu podpisywania
id_token
, teraz obsługiwany jestES384
i zostanie on automatycznie wykryty.
Przewodnik krok po kroku dotyczący migracji
Zaktualizuj konfigurację dostawcy w pliku pages/api/auth/[...nextauth].js
według 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. Wartość issuer możesz uzyskać ze strony Szczegóły aplikacji Logto, w polu "Punkt końcowy wydawcy". Powinna ona wyglądać jak https://xxxx.logto.app/oidc
jeśli używasz usługi chmurowej 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 obsługiwany jest ES384
i zostanie on automatycznie wykryty.
Zaktualizuj projekt
Po zaktualizowaniu konfiguracji dostawcy, musisz zaktualizować pakiet next-auth
do wersji v5, postępuj zgodnie z oficjalnym przewodnikiem po migracji w celu aktualizacji pakietu i upewnij się, że twoja aplikacja działa zgodnie z oczekiwaniami.