Leggi le chiavi di firma del provider
Le chiavi pubbliche che firmano i token ID: una Ed25519 (EdDSA) e una P-256 (ES256), più la coppia precedente per 30 giorni dopo una rotazione.
/oidc/jwks- Accesso
- Pubblico; chiave API facoltativa
- Client
- Fetch dal browser supportato
Esempi di richiesta#
curl -fsS 'https://veil.rip/oidc/jwks'Risposta#
Un JWK Set.
| Campo | Tipo | Significato |
|---|---|---|
keys | array<object> | Ognuna {kty, crv, x, y?, kid, use: sig, alg}. kid è l'impronta RFC 7638; alg è fisso per chiave. |
Intestazioni della risposta#
| Intestazione | Valore | Significato |
|---|---|---|
Cache-Control | public, max-age=300 | Cinque minuti. |
Cosa verificare#
Verifica un token solo con la chiave che il suo kid nomina, e solo con l'alg di quella chiave. Rifiuta none e HS256.
Note d’uso#
- Cache-Control: public, max-age=300. Rileggilo quando un token nomina un kid che non hai.
- Qui non si legge nessuna chiave API: un'intestazione Authorization su /oidc/ è la credenziale dell'app o della persona.
Errori#
Gli errori API restituiscono un oggetto error. Usa error.code nella logica del programma; error.message è un testo inglese per le persone e può cambiare. Guida a risposte ed errori
| HTTP | Codice | Significato e cosa fare |
|---|---|---|
| 404 | not_found | La scheda, la chiave, l’alias, il codice o la risorsa richiesti non sono stati trovati. Controlla l’identificatore. Codici e anteprime temporanei potrebbero essere scaduti o già usati. |
Errori comuni delle richieste
| HTTP | Codice | Significato e cosa fare |
|---|---|---|
| 429 | rate_limited | È stato superato un limite anonimo, delle richieste firmate o della chiave API. Attendi almeno i secondi indicati da |
| 500 | internal_error | Si è verificato un errore imprevisto del server. I dettagli interni non vengono restituiti. Riprova le letture con attese crescenti e un limite. Controlla l’esito delle scritture prima di inviare una nuova operazione firmata. |
| 503 | busy | L’applicazione ha raggiunto un limite temporaneo di concorrenza o del database. Attendi i secondi indicati da |