首页 > 解决方案 > 无法使用节点验证 Cognito 令牌

问题描述

无法从 Cognito 验证 JWT Web-Token。

这是我尝试做的步骤:

然后从结果中获取 id_token 部分

var jwt = require('jsonwebtoken');
var jwkToPem = require('jwk-to-pem');

var token = <token_from_login_endpoint>;
var jwk = <key_object_which_matches_kid_from_token>;
var pem = jwkToPem(jwk);

var result = jwt.verify(token, pem, { algorithms: ['RS256'] }, 
function(err, decodedToken) {
  console.log(err);
  console.log(decodedToken);
});

console.log(result);

这会导致错误:名称:'JsonWebTokenError',消息:'jwt malformed'

根据 JWT.io 的说法,Token 看起来不错,并且有 Header、Payload 和 Public Key。

标签: node.jsjwtamazon-cognito

解决方案


推荐阅读