Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Azure "JsonWebTokenError: invalid algorithm"

Offen
#820 2 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
azure, javascript, node.js

Rechercherichtung

Beginne mit dem Backend-API-Pfad, der jwt.verify enthält, und vergleiche dessen Bereitstellungsverhalten in Azure Static Web Apps mit dem lokalen Emulator. Untersuche das bereitgestellte Token, das von der Microsoft identity jwks_uri zurückgegebene Zertifikat und den konfigurierten RS256-Algorithmus; der Issue ist abgeschlossen, wenn die Ursache des Azure-only-Fehlers „invalid-algorithm“ identifiziert ist und die Verifizierung funktioniert oder die Einschränkung dokumentiert ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Description

Only occurs when deployed to Azure cloud, local Azure Static Web Apps emulator is all ok.

Azure Static Web App (SWA) with integrated API. One of the step at backend API is to validate the Bearer Token with public key submitted in request headers:

const jwt = require("jsonwebtoken");  // v 8.5.1
async function getMSPublicKey(misc)   // misc contains kid and tenantId, confirmed in F12 request header
{
    var vurl = "https://login.microsoftonline.com/" + misc.tenantId + "/v2.0/.well-known/openid-configuration";
    const x1 = await fetch(vurl);
    const x2 = await x1.json();
    const x3 = await fetch(x2.jwks_uri);
    const k = await x3.json();
    return pkey = k.keys.find( k => k.kid === misc.kid).x5c[0];  // public key in the entry matching kid
}

var vmisc = JSON.parse(ac.req.headers["misc"]);
var publickey = "-----BEGIN CERTIFICATE-----\n" + await getMSPublicKey(vmisc) + "\n-----END CERTIFICATE-----";

// next line is reported in AppTraces, Message = JsonWebTokenError: invalid algorithm
var payload = jwt.verify(theToken, publickey, { algorithms: ['RS256'] });
// theToken is validated ok at jwt.io
Environment

Azure Static Web Application

  • jsonwebtoken: v 8.5.1
  • azurefunctions: 3.5.2.0, node v 14.16.0
  • VSC Version: 1.63.1 (system setup)
    Commit: fe719cd3e5825bf14e14182fddeb88ee8daf044f
    Date: 2021-12-14T02:13:54.292Z
    Electron: 13.5.2
    Chromium: 91.0.4472.164
    Node.js: 14.16.0
    V8: 9.1.269.39-electron.0
    OS: Windows_NT x64 10.0.19044
Vorherrschende Sprache
JavaScript
Sterne
18.2k
Forks
1.3k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus auth0/node-jsonwebtoken

Alle Issues in auth0/node-jsonwebtoken

Ähnliche Issues

Weitere Issues zu JavaScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.