Zum Inhalt springen
ecdsa.com
jwks-rsa (Node.js)JWKS und Schlüsselermittlung

Fehlermeldung

The JWKS endpoint did not contain any signing keys

Auch ausgegeben als

  • The JWKS endpoint did not contain any keys

jwks-rsa (Node.js) — JwksError from getSigningKey()

Was der Fehler bedeutet

Der JWKS-Endpunkt hat mit Schlüsseln geantwortet, aber nach dem Filtern kann keiner davon Signaturen prüfen. jwks-rsa behält nur Schlüssel, deren `use` `"sig"` ist oder fehlt, deren `kty` RSA, EC oder OKP ist und die sich erfolgreich als öffentliche Schlüssel importieren lassen. Alles andere – Verschlüsselungsschlüssel, symmetrische Schlüssel, fehlerhafte oder private JWKs – wird verworfen. Die verwandte Meldung „did not contain any keys“ bedeutet, dass das Array `keys` selbst leer war oder fehlte.

Warum der Fehler auftritt

So behebst du den Fehler

  1. 1.

    kty, use und alg jedes Schlüssels ansehen

    Eine Zeile jq zeigt, warum jeder einzelne Schlüssel herausgefiltert wird. Eine Zeile mit `has_private: true` bedeutet, dass der Schlüsselsatz einen privaten Schlüssel preisgibt: Entferne ihn und rotiere diesen Schlüssel.

    bash
    curl -s "$JWKS_URI" | jq '.keys[] | {kid, kty, use, alg, crv, has_private: has("d")}'
  2. 2.

    Mindestens einen Signaturschlüssel veröffentlichen

    Betreibst du den Endpunkt selbst, nimm jeden aktiven Signaturschlüssel mit `use: "sig"`, einem eindeutigen `kid` und seinem `alg` auf. Verschlüsselungsschlüssel dürfen im selben Satz liegen, solange sie mit `use: "enc"` markiert sind.

    json
    {
      "keys": [
        { "kty": "RSA", "kid": "sig-2026-10", "use": "sig", "alg": "RS256", "n": "…", "e": "AQAB" },
        { "kty": "RSA", "kid": "enc-2026", "use": "enc", "alg": "RSA-OAEP-256", "n": "…", "e": "AQAB" }
      ]
    }

Verwandte Fehler

Gesamte Signaturfehler-Datenbank durchsuchen