jwt-go解释Java kisso生成的jwt token

概述

因为公司业务需要做第三方单点登录,上级系统使用Java kisso库生成jwt token,但是因为公司的分系统使用的go语言,所以在解释jwt token方面不那么直接,经过测试后,博文记录,用于备忘

代码

go 复制代码
package main

import (
    "fmt"
    "github.com/dgrijalva/jwt-go"
)

func main() {
   // 定义一个共享秘钥,这个秘钥是从kisso jar提取出来的默认KEY
   key := []byte("3QD2j1B1s6Uj1jx6q8")

   tokenString := ....
   
   // 验证JWT令牌的有效性
   parsedToken, err := jwt.Parse(tokenString, func(token *jwt.Token) (interface{}, error) {
      return key, nil
   })

   if claims, ok := parsedToken.Claims.(jwt.MapClaims); ok && parsedToken.Valid {
       fmt.Println(claims["sub"], claims["name"], claims["iat"])
   } else {
       fmt.Println(err)
   }
}

主要就是加密KEY,如果没有约定就用默认的,有约定就用约定的

参考链接

golang工程组件篇 轻量级认证机制jwt之HS、RS. ES、ED签名与验证

相关推荐
tzjly4 分钟前
JSON数据一键导入SQL Server
python
高山上有一只小老虎6 分钟前
小红的推荐系统
java·算法
萧曵 丶19 分钟前
JDK各版本新增特性详解
java·面试
一分半心动23 分钟前
清理C盘的python脚本
开发语言·python
毅炼43 分钟前
hot100打卡——day08
java·数据结构·算法·leetcode·深度优先
a努力。1 小时前
国家电网Java面试被问:慢查询的优化方案
java·开发语言·面试
AI手记叨叨1 小时前
Python数学:几何运算
python·数学·解析几何·射影几何·微分几何·欧几里得几何
@小码农1 小时前
202512 电子学会 Scratch图形化编程等级考试四级真题(附答案)
java·开发语言·算法
程序猿ZhangSir1 小时前
深入理解 BIO,NIO,AIO 三者的用途和区别?Select,poll,epoll 操作系统函数简介
java·spring·nio
toolhow1 小时前
SelfAttenion自注意力机制
pytorch·python·深度学习