Skip to content

Latest commit

 

History

History
230 lines (136 loc) · 5.6 KB

jwt_unsecured.UnsecuredJWT.md

File metadata and controls

230 lines (136 loc) · 5.6 KB

Class: UnsecuredJWT

Support from the community to continue maintaining and improving this module is welcome. If you find the module useful, please consider supporting the project by becoming a sponsor.


The UnsecuredJWT class is a utility for dealing with { "alg": "none" } Unsecured JWTs.

Example

Encoding

const unsecuredJwt = new jose.UnsecuredJWT({ 'urn:example:claim': true })
  .setIssuedAt()
  .setIssuer('urn:example:issuer')
  .setAudience('urn:example:audience')
  .setExpirationTime('2h')
  .encode()

console.log(unsecuredJwt)

Example

Decoding

const payload = jose.UnsecuredJWT.decode(jwt, {
  issuer: 'urn:example:issuer',
  audience: 'urn:example:audience',
})

console.log(payload)

Table of contents

Constructors

Methods

Constructors

constructor

new UnsecuredJWT(payload?)

Parameters

Name Type Description
payload JWTPayload The JWT Claims Set object. Defaults to an empty object.

Methods

decode

Static decode<PayloadType>(jwt, options?): UnsecuredResult<PayloadType>

Decodes an unsecured JWT.

Type parameters

Name Type
PayloadType JWTPayload

Parameters

Name Type Description
jwt string Unsecured JWT to decode the payload of.
options? JWTClaimVerificationOptions JWT Claims Set validation options.

Returns

UnsecuredResult<PayloadType>


encode

encode(): string

Encodes the Unsecured JWT.

Returns

string


setAudience

setAudience(audience): UnsecuredJWT

Set the "aud" (Audience) Claim.

Parameters

Name Type Description
audience string | string[] "aud" (Audience) Claim value to set on the JWT Claims Set.

Returns

UnsecuredJWT


setExpirationTime

setExpirationTime(input): UnsecuredJWT

Set the "exp" (Expiration Time) Claim.

Parameters

Name Type Description
input string | number | Date "exp" (Expiration Time) Claim value to set on the JWT Claims Set. When number is passed that is used as a value, when string is passed it is resolved to a time span and added to the current timestamp.

Returns

UnsecuredJWT


setIssuedAt

setIssuedAt(input?): UnsecuredJWT

Set the "iat" (Issued At) Claim.

Parameters

Name Type Description
input? number | Date "iat" (Issued At) Claim value to set on the JWT Claims Set. Default is current timestamp.

Returns

UnsecuredJWT


setIssuer

setIssuer(issuer): UnsecuredJWT

Set the "iss" (Issuer) Claim.

Parameters

Name Type Description
issuer string "Issuer" Claim value to set on the JWT Claims Set.

Returns

UnsecuredJWT


setJti

setJti(jwtId): UnsecuredJWT

Set the "jti" (JWT ID) Claim.

Parameters

Name Type Description
jwtId string "jti" (JWT ID) Claim value to set on the JWT Claims Set.

Returns

UnsecuredJWT


setNotBefore

setNotBefore(input): UnsecuredJWT

Set the "nbf" (Not Before) Claim.

Parameters

Name Type Description
input string | number | Date "nbf" (Not Before) Claim value to set on the JWT Claims Set. When number is passed that is used as a value, when string is passed it is resolved to a time span and added to the current timestamp.

Returns

UnsecuredJWT


setSubject

setSubject(subject): UnsecuredJWT

Set the "sub" (Subject) Claim.

Parameters

Name Type Description
subject string "sub" (Subject) Claim value to set on the JWT Claims Set.

Returns

UnsecuredJWT