import JwkClient from "jwks-js";
import jwt from "jsonwebtoken";
const oAuthDomain = process.env.AUTH_DOMAIN;
const url = `${oAuthDomain}/.well-known/jwks.json`;
const client = new JwkClient(url);
function getKey(header, callback) {
client
.getSigningKey(header.kid)
.then((key) => {
const signingKey = key.publicKey || key.rsaPublicKey;
callback(null, signingKey);
})
.catch((error) => {
callback(error, null);
});
}
// Verify the access_token by comparing the RSA with the token
function verifyToken(token) {
if (!token) {
return Promise.reject("token undefined");
}
return new Promise((resolve, reject) => {
jwt.verify(token, getKey, function (err, decoded) {
if (err) return reject(err);
return resolve(decoded);
});
});
}
-
Notifications
You must be signed in to change notification settings - Fork 0
anbturki/jwks-js
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
No description, website, or topics provided.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published