JWT - Verifier node
The JWT - Verifier node validates an incoming JWT to ensure its authenticity and integrity.
This node is available in: Authentication, Admin, Self Service, API, Consent, Library, Custom, User Defined
Node configurations
-
JWT: Specify the JWT to be verified.
- Load by URL: JWT can be retrieved from a specified URI. This allows loading the token from an external source. In this case defines the time-to-live (in seconds) for the retrieved JWT.
-
Choose Signature type: Enable signing of the JWT to ensure integrity and authenticity.
-
JWK Configuration:
-
Symmetric Key (Password): Uses a shared secret (HS256, HS384 or HS512).
-
KID:Unique identifier of the key used to sign the token. It is included in the JWT header.
-
OCT AlgorithmDefines the signing algorithm (e.g., HS256, HS384, HS512).
-
Password:The secret (for symmetric) or key material (for asymmetric signing).
-
JWK:JSON representation of the key. Can be auto-generated or manually edited.
-
-
Asymmetric Key: Uses public/private key pairs (RSA or EC).
-
Asymmetric Key Type:Choose between RSA and EC algorithm.
-
KID: Unique identifier of the key used to sign the token.
-
Key Size: Define the size of the RSA key in bits (e.g., 2048, 4096).
-
RSA Algorithm: Specify the RSA based signing algorithm to use (e.g., RS256, RS384, RS512).
-
EC Algorithm: Specify the EC based signing algorithm to use (e.g., ES256, ES384, ES512).
-
Curve: Define the elliptic curve used for EC-based cryptographic operations.
-
Public Key: The public key used to verify the JWT signature.
-
Public JWK: The public key in JSON Web Key (JWK) format.
-
-
-
-
Choose Encryption type: Enables encryption of the JWT (JWE) to add an extra layer of security.
-
JWK Configuration
-
Symmetric Key (Password): Uses a shared secret (A128KW, A256KW etc.).
-
KID: Unique identifier of the key.
-
OCT Algorithm: Defines the signing algorithm (e.g., A128KW, A256KW).
-
Password: The secret (for symmetric) or key material (for asymmetric signing).
-
JWK: JSON representation of the key. Can be auto-generated or manually edited.
-
-
Asymmetric Key: Uses public key (RSA or EC).
-
Asymmetric Key Type: Choose between RSA and EC algorithms.
-
KID: Unique identifier of the key.
-
Key Size:Define the size of the RSA key in bits (e.g., 2048, 4096).
-
RSA Algorithm: Specify the RSA-based encryption algorithm to use (e.g., RSA-OAEP, RSA-OAEP-256).
-
EC Algorithm: Specify the EC-based encryption algorithm to use (e.g., ECDH-ES, ECDH-ES+A128KW).
-
Curve: Define the elliptic curve used for EC-based cryptographic operations.
-
Private Key: The private key used to sign the JWT. This key must be kept secure and never exposed publicly.
-
Public Key: The public key used to verify the JWT signature.
-
Public JWK: The public key in JSON Web Key (JWK) format.
-
Private JWK: The private key in JSON Web Key (JWK) format.
-
-
-
Save in the flow store
Attributes generated or retrieved from the node can be saved into a variable. They can then be reused by other nodes in the flow by referencing them as {{variable.attribute}}.
To do this you choose attributes (displayed in a multi-select dropdown) that need to be stored and then a variable name that can be defined by the user.
There is also a flag to make the variable available to the frontend.
Default output node
- True
- Not Verified
- Expired
- Failure
JSON metadata
{
"name": "verify_jwt_v3",
"active": true,
"bundleName": "default-nodes",
"bundleVersion": "1.0",
"nodeName": "VerifyJwtV3",
"category": "encryption_signing",
"deprecated": false,
"displayName": [{
"lang": "en",
"value": "JWT - Verifier"
}, {
"lang": "it",
"value": "JWT - Verifier"
}
],
"index": 6,
"inputs": [{
"name": "Input"
}
],
"outputs": [{
"name": "Verified",
"level": "success"
}, {
"name": "NotVerified",
"level": "warning"
}, {
"name": "Expired",
"level": "warning"
}, {
"name": "Failure",
"level": "error"
}
]
}