Skip to content

Latest commit

 

History

History
51 lines (36 loc) · 1.71 KB

jwk_embedded.embeddedjwk.md

File metadata and controls

51 lines (36 loc) · 1.71 KB

Function: EmbeddedJWK

jwk/embedded.EmbeddedJWK

EmbeddedJWK(protectedHeader, token): Promise<KeyObject | CryptoKey>

EmbeddedJWK is an implementation of a GetKeyFunction intended to be used with the JWS/JWT verify operations whenever you need to opt-in to verify signatures with a public key embedded in the token's "jwk" (JSON Web Key) Header Parameter. It is recommended to combine this with the verify algorithms option to whitelist JWS algorithms to accept.

example ESM import

import { EmbeddedJWK } from 'jose/jwk/embedded'

example CJS import

const { EmbeddedJWK } = require('jose/jwk/embedded')

example Usage

import { jwtVerify } from 'jose/jwt/verify'

const jwt = 'eyJqd2siOnsiY3J2IjoiUC0yNTYiLCJ4IjoiVU05ZzVuS25aWFlvdldBbE03NmNMejl2VG96UmpfX0NIVV9kT2wtZ09vRSIsInkiOiJkczhhZVF3MWwyY0RDQTdiQ2tPTnZ3REtwWEFidFhqdnFDbGVZSDhXc19VIiwia3R5IjoiRUMifSwiYWxnIjoiRVMyNTYifQ.eyJpc3MiOiJ1cm46ZXhhbXBsZTppc3N1ZXIiLCJhdWQiOiJ1cm46ZXhhbXBsZTphdWRpZW5jZSIsImlhdCI6MTYwNDU4MDc5NH0.60boak3_dErnW47ZPty1C0nrjeVq86EN_eK0GOq6K8w2OA0thKoBxFK4j-NuU9yZ_A9UKGxPT_G87DladBaV9g'

const { payload, protectedHeader } = await jwtVerify(jwt, EmbeddedJWK, {
  issuer: 'urn:example:issuer',
  audience: 'urn:example:audience'
})

console.log(protectedHeader)
console.log(payload)

Parameters

Name Type
protectedHeader JWSHeaderParameters
token FlattenedJWSInput

Returns

Promise<KeyObject | CryptoKey>

Defined in

jwk/embedded.ts:40