Lua 从JWT格式解码访问令牌

Lua 从JWT格式解码访问令牌,lua,oauth-2.0,jwt,decode,openid-connect,Lua,Oauth 2.0,Jwt,Decode,Openid Connect,我们正在使用nginx服务器进行反向代理,并安装了openresty openid lua。。。。这意味着每个请求都有一个包含JWT令牌访问id和刷新令牌的授权头 现在,我们需要做的是解码访问令牌,因为我需要JWT令牌中的sub,并将其记录到nginx服务器上 有没有办法解码和记录JWT?我查看了openidc.lua文件,可以看到它解码了id令牌,但看不到在哪里可以解码访问令牌 任何帮助都将不胜感激。一个JWT令牌(或者更好地说是一个JWS,一个签名令牌)只包含两个Base64Url编码的JS

我们正在使用nginx服务器进行反向代理,并安装了openresty openid lua。。。。这意味着每个请求都有一个包含JWT令牌访问id和刷新令牌的授权头

现在,我们需要做的是解码访问令牌,因为我需要JWT令牌中的sub,并将其记录到nginx服务器上

有没有办法解码和记录JWT?我查看了openidc.lua文件,可以看到它解码了id令牌,但看不到在哪里可以解码访问令牌

任何帮助都将不胜感激。

一个JWT令牌(或者更好地说是一个JWS,一个签名令牌)只包含两个Base64Url编码的JSON结构和一个签名

要查看它是如何工作的,您可以在


在该站点上,您还可以找到不同语言的JWT框架的链接,也可以找到Lua的链接。但是要读取JWT/JWS的内容,您只需要一个Base64Url解码器和一个JSON derserializer。

这就完成了我的任务

local jwt = require "resty.jwt"
local jwt_obj = jwt:load_jwt(res.access_token)
local cjson = require "cjson"
ngx.log(ngx.DEBUG, "res.access_token.sub=", cjson.encode(jwt_obj))

你能给我举一些例子吗?我没有和Lua合作,所以我必须自己用谷歌搜索。但是在Github页面上有一些例子。