我正在使用 Azure AD OpenID 连接框架为基于 Web 的 Java 应用程序开发身份验证服务。我指adal4j-1.2.0.jar
的是根据行为进行身份验证。我收到了 JWT 声明并能够验证它。
但是,当会话超时 60 分钟并且我尝试使用刷新令牌获取新令牌声明时,新令牌不是签名 JWT。它们是普通的 JWT。
我正在使用下面的调用来使用我正在缓存的初始刷新令牌获取令牌。
acquireTokenByRrefreshToken(refreshtoken, credential,null,null)
为了验证令牌,我使用如下代码
IDtokenValidator validator = new IDTokenValidator(issuer,clientID, JWSAlgo,URL)
validator.validate(idToken, exoectedNoounce); //this line throws badjwtexception signed ID token expected
谁能帮助我了解如何兑换刷新令牌以获取新的签名令牌。或者在赎回代币之后,新的代币总是Plain JWT。