Mashape Kong + JWT 无效令牌
Mashape Kong + JWT invalid token
我开始使用 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/等很多工具来生成密钥。不管怎样,这里是我输入的数据:
Header
{
"typ": "JWT",
"alg": "HS256"
}
有效载荷
{
"iss": "6fad7730b5134fbb9d74d356d838c9b4"
}
验证签名
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
6b965bcbf48a4ea7a170bf56557e14c1
)
工具returns我使用的密钥然后作为授权header:
Authorization: Bearer <token>
不幸的是,服务器的响应总是 401:
{
"error_description": "The access token is invalid or has expired",
"error": "invalid_token"
}
如果我发送损坏的令牌或从错误数据生成的令牌,我会收到不同的错误消息。
我做错了什么?
已解决。
基本上对同一个 API 进行了更多测试,我应用了两个插件(Oauth2 和 JWT),然后造成了冲突。
正如我所说,我才刚刚开始,所以对于新手,请注意不要在同一个 API.
上使用更多的身份验证插件
我开始使用 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/等很多工具来生成密钥。不管怎样,这里是我输入的数据:
Header
{
"typ": "JWT",
"alg": "HS256"
}
有效载荷
{
"iss": "6fad7730b5134fbb9d74d356d838c9b4"
}
验证签名
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
6b965bcbf48a4ea7a170bf56557e14c1
)
工具returns我使用的密钥然后作为授权header:
Authorization: Bearer <token>
不幸的是,服务器的响应总是 401:
{
"error_description": "The access token is invalid or has expired",
"error": "invalid_token"
}
如果我发送损坏的令牌或从错误数据生成的令牌,我会收到不同的错误消息。
我做错了什么?
已解决。
基本上对同一个 API 进行了更多测试,我应用了两个插件(Oauth2 和 JWT),然后造成了冲突。
正如我所说,我才刚刚开始,所以对于新手,请注意不要在同一个 API.
上使用更多的身份验证插件