如何在节点中使用 x.509 证书验证 JWT 令牌?

Posted

技术标签:

【中文标题】如何在节点中使用 x.509 证书验证 JWT 令牌?【英文标题】:How do you verify a JWT token with a x.509 certificate in node? 【发布时间】:2016-06-14 06:20:30 【问题描述】:

我正在尝试让节点脚本验证 JWT 令牌。我有公钥(它是 x.509 证书)和 JWT。

我尝试使用 https://github.com/auth0/node-jsonwebtoken 但不幸的是,他们似乎不支持 x.509。

如果您知道使用 x.509 证书验证 JWT 令牌的软件包,我将不胜感激。

谢谢!

【问题讨论】:

jsrsasign 也许? 你可以试试jsjws的包装器 【参考方案1】:

JWT 可以使用公钥/私钥进行签名。你要找的方法是这个:https://github.com/auth0/node-jsonwebtoken#jwtverifytoken-secretorpublickey-options-callback

这个测试展示了如何使用它的例子:

https://github.com/auth0/node-jsonwebtoken/blob/master/test/jwt.rs.tests.js

你也可以使用http://jwt.io

【讨论】:

以上是关于如何在节点中使用 x.509 证书验证 JWT 令牌?的主要内容,如果未能解决你的问题,请参考以下文章

X.509证书验证过程

如何建立对中介颁发的 X.509 证书的信任?

X509VerificationFlags.IgnoreEndRevocationUnknown做什么?

让 Grails、Spring Security Core Plugin 和 Tomcat 使用 X.509 证书身份验证

X509Certificate2.Verify() 出错但证书正在工作

尝试在 PHP 中使用 x.509 证书对 SOAP 调用进行数字签名