1
我創建了一個認證服務器和資源服務器,兩者都正常工作,唯一的問題是刷新令牌,我希望在調用POST /oauth/token
後使用grant_type=refresh_token
更改,但是,spring返回相同的刷新標記。刷新訪問令牌後彈出OAuth2刷新令牌
我想知道在調用oauth端點刷新訪問令牌時是否有辦法獲得新的刷新標記?
我創建了一個認證服務器和資源服務器,兩者都正常工作,唯一的問題是刷新令牌,我希望在調用POST /oauth/token
後使用grant_type=refresh_token
更改,但是,spring返回相同的刷新標記。刷新訪問令牌後彈出OAuth2刷新令牌
我想知道在調用oauth端點刷新訪問令牌時是否有辦法獲得新的刷新標記?
通過在DefaultTokenServices
類考慮看看refreshAccessToken
方法:
public OAuth2AccessToken refreshAccessToken(String refreshTokenValue,
TokenRequest tokenRequest) {
// Omitted
if (!reuseRefreshToken) {
tokenStore.removeRefreshToken(refreshToken);
refreshToken = createRefreshToken(authentication);
}
// Omitted
}
你應該以某種方式reuseRefreshToken
標誌設置爲false
。你可以在你的AuthorizationServerConfigurerAdapter
實施中做到這一點:
@Configuration
@EnableAuthorizationServer
public class AuthorizationServer extends AuthorizationServerConfigurerAdapter {
// Other methods
@Override
public void configure(AuthorizationServerEndpointsConfigurer endpoints) throws Exception {
endpoints
.reuseRefreshTokens(false);
}
}
謝謝你的男人,工作就像一個魅力! – nspessot