解密 next-auth 生成的 jwt 令牌以获取内部信息
在 next-auth 中生成了 jwt 令牌,并在 Java 中使用时遇到了解析异常。下面将演示如何解决此问题:
问题根源:
jwt 令牌的格式错误,出现了 4 个小数点字符,而标准的 jwt 格式仅允许 2 个小数点。
解决方案:
下一代身份验证 (next-auth)贡献者指出,其生成的令牌是经过加密的,仅供当前应用程序使用。因此,无法使用签名密钥对其进行解码。
如果你需要向第三方提供令牌,可以在登录后在会话中设置一个额外的访问令牌:
session.accessToken = your token
这样做可以创建一个新的访问令牌,该令牌未加密,可以与第三方共享。