Package org.forgerock.openig.fapi.jwt
Class OctetSequenceJwsReconstruction
java.lang.Object
org.forgerock.openig.fapi.jwt.OctetSequenceJwsReconstruction
A service that provides a method for reconstructing a JWS string containing an octet-sequence payload back into its
respective
OctetSequenceSignedJwt
.
This expands on the COMMONS JwtReconstruction
class on which it is based in
that it supports non-JSON payloads through the use of COMMONS Payload
, which is already supported by e.g. the
SignedJwt
class. Note that this implementation does not support building these other JWT types.
N.B. This class is introduced for OpenBanking OPENIG-9436, but is expected to be temporary until COMMONS can be retrofitted to support octet-sequence JWS and JWE payloads (COMMONS-1558). There are a number of constraints that make that not immediately straightforward.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionrecognizedHeaders
(String... headers) Configures additional application-specific header values that are understood and processed by the application.reconstructJwt
(String jwtString) Reconstructs the given encoded octet-sequence JWS string into a JWS object of the specified type.
-
Constructor Details
-
OctetSequenceJwsReconstruction
public OctetSequenceJwsReconstruction()Default constructor.
-
-
Method Details
-
recognizedHeaders
Configures additional application-specific header values that are understood and processed by the application. Any non-standard critical headers that are not in this list will cause processing to fail.- Parameters:
headers
- the set of headers to add to the recognized set.- Returns:
- the updated JwtReconstruction object.
-
reconstructJwt
Reconstructs the given encoded octet-sequence JWS string into a JWS object of the specified type. ThejwtString
is expected to contain an octet-sequence UTF-8 payload.- Parameters:
jwtString
- The JWT string.- Returns:
- The reconstructed JWT object.
- Throws:
InvalidJwtException
- If the jwt does not consist of the correct number of parts or is malformed.JwtReconstructionException
- If the jwt does not consist of the correct number of parts.UnrecognizedCriticalHeaderException
- If the JWT contains critical headers ("crit") that are not recognized by the application.
-