Java Spring Boot OAuth2登录不执行任何操作

Java Spring Boot OAuth2登录不执行任何操作,java,spring,spring-boot,spring-security,oauth-2.0,Java,Spring,Spring Boot,Spring Security,Oauth 2.0,我正在尝试使用OAuth2提供程序管理用户会话,并且我进行了自定义登录,以进行调用、设置cookie等。。。但是后来我意识到Spring Boot Security有OAuth2集成,我决定从头开始,以正确的方式进行 问题是,对于我访问的任何安全路径,我被重定向到服务,我在那里登录,然后我被重定向回我的回调url,代码为param,我像往常一样通过控制器获得模板,在任何时候都没有在我的应用程序上获得授权 在我使用此代码访问API之前,但据我所知,Spring应该管理它 因此,我自动验证,我再次

我正在尝试使用OAuth2提供程序管理用户会话,并且我进行了自定义登录,以进行调用、设置cookie等。。。但是后来我意识到Spring Boot Security有OAuth2集成,我决定从头开始,以正确的方式进行

问题是,对于我访问的任何安全路径,我被重定向到服务,我在那里登录,然后我被重定向回我的回调url,代码为param,我像往常一样通过控制器获得模板,在任何时候都没有在我的应用程序上获得授权

在我使用此代码访问API之前,但据我所知,Spring应该管理它

因此,我自动验证,我再次被重定向到我的页面(我的回调url允许所有用户使用),然后我就在同一个地方,没有以任何方式进行身份验证。我无法访问任何安全路径

我所做的

application.yml:

security:
    oauth2:
      client:
        registration:
          wca:
            client-id: 0YekXxbT20En0V000000Tk9pGam2K9HvIA0fTPP0
            client-secret: cm0001232132132132hGNICxzAwNKqFMg
            authorization-grant-type: authorization_code
            redirect-uri: '{baseUrl}/loginWCA'
        provider:
           wca:
             authorization-uri: https://www.worldcubeassociation.org/oauth/authorize
             token-uri: https://www.worldcubeassociation.org/api/v0/me
SecurityConfig:

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter{


    @Override
    protected void configure(HttpSecurity http) throws Exception {
            http.authorizeRequests().antMatchers("/loginWCA").permitAll().anyRequest().authenticated().and().oauth2Login();
    }

免责声明:我知道我正在保护一切,我的目标是转到根路径->重定向到提供商->登录->返回我的网站->以经过身份验证的用户身份进行有效会话以访问根路径。

您应该在登录通过后获得令牌。请参考您的oauth2提供商。然后在请求头“Authentication”中添加它和承载。所以其他页面不需要验证。

正如我所说,这是我的第一种方法。我问的是如何让Spring管理它。我认为应该将视图页面与RESTfulAPI调用分开。我们总是使用oauth2来保护api资源。在spring中,要访问oauth2资源,客户端需要OAuth2RestTemplate。请参考spring security中的示例:tonr负责查看,Sparkr提供api资源。