dongtiao5094 2018-02-16 20:14
浏览 296

GOLANG是否从内存加载JWK(JSON Web密钥),而不是从URL加载? 取

I'm using "github.com/lestrrat/go-jwx/jwk" to Validate Jason Web Tokens (JWT). https://github.com/lestrrat/go-jwx

The JWK Library has a great function to load keys from a URL, but this would be running in a serverless environment, so I want to cache the keys rather than fetching them like this:

set, err := jwk.Fetch(keyUrl)

I'm trying to figure out how to load them directly, or create them from the keys I already have.

The keys are the JSON format.

{"keys":
[{"alg":"RS256","e":"AQAB","n":"jqm5oX5Vth4JW1gZQHywIki2beYCgBSL-
EYlefDUlI6SShtEKfi-vWYbFh2pNNUAE4NHuYpYP-
FG1uRSKs6WK2k6KMB2Hyx3hBkWyu7Aqo_pb1WItkPSZS-AWOMp4N-

I just can't find an example of how to do this. There must be a way

  • 写回答

1条回答 默认 最新

  • doudao2407 2018-02-18 18:36
    关注

    In case anyone else get's stuck on this, although I think it's unlikely, and thank you Stephen and Jonah for your patience.

    jwk.Parse was exactly what I needed. There is even an option for a string.

    set, err := jwk.ParseString(`{"keys":[{"alg":"RS256","e":"AQAB","n":"jqm5oX5Vth4JW1gZQHywIki2beYCgBSL-EYlefDUlI6SShtEKfi-vWYbFh2pNNUAE4NHuYpYP-FG1uRSKs6WK2k6KMB2Hyx3hBkWyu7Aqo_pb1WItkPSZS-AWOMp4N-ENPGyNQ4u2ill17ZwBKt1wgDvdaWpNaqPEcSaUNSXA7ZD5scFFnZt36r6crhgK7vHXChhXU3nlKEN2OwFdyEGdX01l-HxgPk0HPIfnUyYxuGI_CL-7aV_rf3KY4uw6yNfEO0jom0NZ-I8F1NzpbaDxj4hD4xlDZIQI9PxLq4nAtb4ZVQC1xhnRv-uufs9Wa4XFjs6jJSWGcWV1Z7K5HmMaw","kid":"tNtnDgeXepbf2NZlVjzKGdtPU9mnOidtw0puo3s-_8Y","kty":"RSA","use":"sig"},{"alg":"RS256","e":"AQAB","n":"o_CYYN5Lo9XuCRADNxqDTVolcWshv7LD7EmwFCvtbdHErvfOQPHyAFMLMDKracToe2Rg7cBihYC_wgHRItXAgxAM6P7mNT_DvbLpp2HtbMtmYLtWyGqHJsJQE9gNSOMsxEugxq9lpGjROiU2nZm7TZ-QwVV-F7dfBl0NBVy5oFbTCRUDxFcKOr_zh3xK-fRIsJbqbB4VPt8IhA_GjvjyoMlH0pfhoRqDMWk8vLXHhRxYlT5bZP1PDulFMGGO8KH7Cvh4D0cZE9mSiUFyVlDDzCbAH88a0TAGYkqERdVfHBYaTsCCseBqsvUoqbdzQwd2fOLf-N0jpSdNMNxHGNwl3w","kid":"ddPUDDyUpH2N5wGSXvnqQZy-OmTFSVu5PYansjpsoAs","kty":"RSA","use":"sig"}]}`)
    
    评论

报告相同问题?

悬赏问题

  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 个人网站被恶意大量访问,怎么办
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)
  • ¥15 自适应 AR 模型 参数估计Matlab程序
  • ¥100 角动量包络面如何用MATLAB绘制
  • ¥15 merge函数占用内存过大