Spring Security OAuth2客户端:获authorization_code后未调用token端点循环重定向
Spring Security OAuth2授权码流程循环重定向问题
环境与配置
- 使用依赖:spring-security、oauth2-client
- 主页地址:
http://localhost:9090/webpage/
application.properties 配置内容
spring.security.oauth2.client.registration.fedsso.client-id= spring.security.oauth2.client.registration.fedsso.scope=openid spring.security.oauth2.client.registration.fedsso.authorization-grant-type=authorization_code spring.security.oauth2.client.registration.fedsso.redirect-uri=http://localhost:9090/webpage/ spring.security.oauth2.client.provider.fedsso.issuer-uri= spring.security.oauth2.client.provider.fedsso.authorization-uri= spring.security.oauth2.client.provider.fedsso.token-uri= spring.security.oauth2.client.provider.fedsso.user-info-uri=
SecurityFilterChain Bean 实现代码
http.authorizeHttpRequests() .anyRequest().authenticated() .and() .oauth2Login(); return http.build();
网络请求流程
http://localhost:9090/webpage/→ 触发重定向
http://localhost:9090/webpage/oauth2/authorization/fedsso→ 触发重定向
/authorization.oauth2→ 触发重定向
http://localhost:9090/webpage/?code=auth_code&state=qwasda→ 触发重定向
问题描述
按照授权码流程逻辑,第4步重定向后Spring Security应当调用token端点,使用返回的authorization_code换取access_token/Id_token,但实际情况是再次重定向到第2步,进入2-4的循环。已通过Postman/Insomnia验证授权码流程本身可正常获取令牌。
内容的提问来源于stack exchange,提问作者Seriously
相关产品推荐
相关产品推荐

