Mashape Kong + JWT无效令牌

时间:2017-07-19 14:38:22

标签: jwt kong mashape

我开始使用Kong。我成功地使用Oauth2插件创建了一个简单的身份验证系统,但现在我对JWT插件有一些麻烦。

我搜索了很多但是缺乏关于这个主题的文档和资源。

我按照指南进行了操作:https://getkong.org/plugins/jwt/

我使用他的JWT凭据创建了一个消费者:

{
"secret": "6b965bcbf48a4ea7a170bf56557e14c1",
"id": "5587b664-c8b5-4941-95fe-f6e03c319fa4",
"algorithm": "HS256",
"created_at": 1500473323000,
"key": "6fad7730b5134fbb9d74d356d838c9b4",
"consumer_id": "459cc6ab-fd62-4510-80cc-4eb48e5326a3"
}

然后我打开了https://jwt.io/和许多其他工具来生成密钥。无论如何我输入的数据是:

标题

{
"typ": "JWT",
"alg": "HS256"
}

有效载荷

{
"iss": "6fad7730b5134fbb9d74d356d838c9b4"
}

验证签名

HMACSHA256(
  base64UrlEncode(header) + "." +
  base64UrlEncode(payload),
  6b965bcbf48a4ea7a170bf56557e14c1
)

该工具返回一个我用作授权标题的密钥:

Authorization: Bearer <token>

不幸的是,服务器的响应始终是401:

{
"error_description": "The access token is invalid or has expired",
"error": "invalid_token"
}

如果我发送损坏的令牌或从错误数据生成的令牌,我会收到不同的错误消息。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

解决。

基本上在同一个API上做了更多测试,我应用了两个插件(Oauth2和JWT),然后创建冲突。

正如我所说,我刚刚开始,所以对于新手来说,请注意不要在同一个API上使用更多的身份验证插件。