JWT
n8n : JWTToutes les offres1 entrée · 1 sortie
Signe, vérifie ou décode un jeton JWT.
Fonctionnement
La vérification impose l'algorithme configuré (un jeton « none » ou d'un autre algorithme est refusé), puis contrôle exp, nbf, iss et aud. Décoder lit l'en-tête et le contenu sans aucune garantie d'authenticité.
Paramètres
| Paramètre | Type | Détail |
|---|---|---|
| Opération | choix | Valeurs : Signer un jeton, Vérifier un jeton, Décoder sans vérifier. |
| Cléobligatoire · selon les autres paramètres | connexion | Connexion « Clé de signature » : secret (HS…) ou clés PEM (RS, PS, ES, EdDSA). |
| Algorithmeselon les autres paramètres | choix | Valeurs : HS256, HS384, HS512, RS256, RS384, RS512, PS256, PS384, PS512, ES256…. |
| Contenu (claims)selon les autres paramètres | texte long | Objet JSON après résolution des expressions. « iat » est ajouté automatiquement. |
| Validité (secondes)selon les autres paramètres | nombre | Vide ou 0 : pas d'expiration. |
| Jetonobligatoire · selon les autres paramètres | texte | Le préfixe « Bearer » est retiré s'il est présent. |
| Émetteur (iss)selon les autres paramètres | texte | Signature : ajouté au jeton. Vérification : exigé s'il est renseigné. |
| Audience (aud)selon les autres paramètres | texte | — |
| Tolérance d'horloge (secondes)selon les autres paramètres | nombre | — |
| Jeton invalideselon les autres paramètres | choix | Valeurs : Échouer, Continuer avec { valid: false, reason }. |
| Champ de sortieobligatoire | texte | Notation pointée acceptée (resultat.valeur). Les autres champs de l'élément sont conservés. |
Données reçues et renvoyées
- EntréeListe d'éléments.
- SortieSigner : le jeton (texte). Vérifier et décoder : { header, payload } (et valid, reason si « Continuer »).
Erreurs
Signature invalide, jeton expiré ou pas encore valide, émetteur ou audience différents, clé inadaptée à l'algorithme, contenu non JSON.
Exemple
Paramètres d'un bloc prêt à l'emploi. Dans l'éditeur, l'onglet Aide du bloc applique cet exemple en un clic.
{
"operation": "verify",
"algorithm": "HS256",
"token": "{{ $json.headers.authorization }}",
"issuer": "https://auth.exemple.fr",
"onInvalid": "flag",
"outputField": "jwt"
}