Deutsch
  • js
  • next
  • next-auth
  • auth.js

Migration von NextAuth.js v4 zu Auth.js v5

Ein Leitfaden zur Migration der Logto-Integration von NextAuth.js v4 zu v5.

Sijie
Sijie
Developer

NextAuth.js Version 5 ist eine umfassende Überarbeitung des next-auth-Pakets, die bedeutende Änderungen mit sich bringt, die verschiedene Integrationen betreffen, einschließlich Logto. Dieser Leitfaden führt dich durch den Prozess der Migration deiner Logto-Integration von NextAuth.js v4 zu Auth.js v5.

Wir haben kürzlich unseren NextAuth-Schnellstart-Leitfaden aktualisiert. Schau ihn dir an!

Änderungen verstehen

Auth.js v5

NextAuth.js v5 führt mehrere große Änderungen ein. Die Hauptänderung, die die Art und Weise betrifft, wie du Logto mit deiner Anwendung integrierst, ist die Veränderung bei "OIDC/OAuth-Anbietern". In der offiziellen Dokumentation heißt es: "Auth.js baut jetzt auf @auth/core mit strengerer OAuth/OIDC-Spezifikation auf, was einige bestehende OAuth-Anbieter beeinträchtigen könnte". Für Logto-Nutzer bedeutet dies, dass du die Anbieter-Konfiguration aktualisieren musst.

Für weitere Informationen zu den Änderungen kannst du den offiziellen Migrationsleitfaden einsehen.

Logto-Anbieterkonfiguration

Die Anbieterkonfiguration für Logto wurde aktualisiert:

  • Der Typ wurde von oauth zu oidc geändert.
  • Der wellKnown-Endpunkt wurde entfernt, und stattdessen musst du das issuer-Feld angeben.
  • Es ist nicht mehr notwendig, den id_token-Signaturalgorithmus anzugeben. Es wird jetzt ES384 unterstützt und automatisch erkannt.

Schritt-für-Schritt-Migrationsleitfaden

Aktualisiere die Anbieterkonfiguration in deiner Datei pages/api/auth/[...nextauth].js mit der neuen Konfiguration:

Schritt 1: Anbietertyp ändern

Ändere den Anbietertyp von oauth zu oidc.

Schritt 2: Issuer-Feld hinzufügen

Füge das issuer-Feld zur Anbieterkonfiguration hinzu. Du kannst den Wert des Issuers von der Logto-Anwendungsseite im Feld "Issuer-Endpunkt" abrufen. Er sollte wie https://xxxx.logto.app/oidc aussehen, wenn du den Logto-Cloud-Service verwendest.

Dann kannst du das wellKnown-Feld entfernen.

Schritt 3: id_token_signed_response_alg Signaturalgorithmus entfernen

Du musst den id_token_signed_response_alg Signaturalgorithmus in der Anbieterkonfiguration nicht mehr angeben. Er unterstützt jetzt ES384 und wird automatisch erkannt.

Projekt aktualisieren

Nachdem du die Anbieterkonfiguration aktualisiert hast, musst du das next-auth-Paket auf v5 aktualisieren. Folge dem offiziellen Migrationsleitfaden, um das Paket zu aktualisieren, und stelle sicher, dass deine Anwendung wie erwartet funktioniert. Stelle sicher, dass du auch den NextAuth-Schnellstart-Leitfaden referenzierst.