我试图刷新访问令牌,使用与refres_token相同的方法作为Grant_type和刷新令牌来调用访问令牌,但是遇到了身份验证错误。调试应用程序时,我会注意到,当spring调用一个名为readAuthenticationForRefreshToken的方法时,此返回的认证将Principal类作为属性,而该类又具有一个NULL的username属性,spring会使用此字段来验证用户,以便进行验证给出了UserNotFoundException。
我附上与readAuthenticationForRefreshToken方法相对应的图像,并在返回值时
如何解决此问题? 提前谢谢。
答案 0 :(得分:0)
我通过返回org.springframework.security.core.userdetails.User类而不是我自己的在loadUserByUsername()方法中实现UserDetails的类来解决了这个问题。