使用JWT生成访问令牌

时间:2020-06-09 05:49:16

标签: jwt okta

已授予我访问okta令牌端点的权限。我想使用此服务来请求令牌。给我一个URL,客户端ID,客户端机密,范围和授予类型。我可以使用邮递员对url(/ v1 / token)进行POST调用,并传递上述信息(客户端ID,客户端机密,作用域和授予类型),然后获得访问令牌。

我可以使用RestTemplate或等效的方法轻松地在Java中进行此调用,但是我想使用一个可以为我管理令牌的API。

我找到了JJWT。我在那里看到的所有示例都向我展示了如何使用JJWT创建JWT。我想做的就是获取访问令牌,但是我不确定该怎么做。我的意思是我知道JJWT是用于创建JWT的API,但是如何使用JWT来获取访问令牌?

非常感谢您的帮助/说明/指导。

1 个答案:

答案 0 :(得分:0)

我们将JWT与node.js结合使用,以创建新的令牌jwt.sign(data, key)至少要包含一个参数,第一拳必须是一些凭据,例如userId,email ...,第二个将是稍后验证的关键。为了验证令牌是否有效,我们使用jwt.verify(),第一个参数是令牌(jwt.sing()为您提供令牌),第二个参数为密钥(您在创建时提供的密钥);

示例:

创建JWT令牌:

var jwt = require('jsonwebtoken');
cosnt token = jwt.sign({ email: 'test@test.com', userId: '993333' }, 'secretkey');

验证令牌:

try {
      const decodedToken = jwt.verify(token, 'secretkey');
} 
catch(err) { 
   throw new Error(err) 
}

 // once verified 
 conosole.log(decodedToken)

我发现this post如何使用Java创建和验证令牌,谢谢!