Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
Object.assign(payload, {
aud: options.audience !== undefined ? options.audience : payload.aud,
azp: options.authorizedParty !== undefined ? options.authorizedParty : payload.azp,
exp: options.expiresIn !== undefined ? timestamp + options.expiresIn : payload.exp,
iat: payload.iat !== undefined ? payload.iat : iat,
iss: options.issuer !== undefined ? options.issuer : payload.iss,
sub: options.subject !== undefined ? options.subject : payload.sub,
});
if (alg === 'none') {
return [base64url.encode(JSON.stringify(header)), base64url.encode(JSON.stringify(payload)), ''].join('.');
}
header.kid = key.kty !== 'oct' ? key.kid : undefined;
return JWS.sign(payload, key, header);
}