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签名与验证

相关推荐
quantdash_cc15 小时前
如何设计高效率的批量股票数据获取程序?QuantDash Python SDK 全市场行情拉取实战指南
开发语言·python·数据分析·量化交易·股票数据·quantdash
砚底藏山河16 小时前
拉数管道设计:从一次性脚本到可重启的数据流水线(魔码量化实战 #01)
java·数据库·python·金融·maven
饕餮争锋16 小时前
PATH路径列表介绍
java·linux·服务器
SimonKing16 小时前
一文终结 Java 路径加载争议:斜杠 什么时候该加,什么时候不该加
java·后端·程序员
东莞市云毅网络有限公司16 小时前
企业非结构化资料拆分成可引用片段:一套能跑通的预处理流水线
python·数据清洗·rag·企业知识库·文档解析
淼澄研学16 小时前
Sonos空间音频技术解析与Python本地API控制实操
开发语言·python·音视频
Rain的Java大神之路16 小时前
手写一个Spring容器
java·后端·mysql·spring·面试
小七在进步16 小时前
C++入门(1)
java·jvm·c++
孤狼warrior16 小时前
SCTR 五次失败的安全 BN 路由器
人工智能·python·深度学习·算法·安全·yolo
Wang's Blog16 小时前
Java框架快速入门: Spring Security+OAuth2之定制登录页
java·开发语言·spring