Spring OAuth2服务器:WebSecurityConfigurerAdapter如何允许登录页面之外的其他请求

时间:2019-01-23 19:53:41

标签: spring-boot spring-security oauth-2.0

我想允许除配置外的登录页面之外的其他页面注册页面。我使用authorization_code授权将用户与另一个服务(客户端)连接,因此将他们重定向到oauth2服务器进行登录,然后将他们重定向回到客户端。

我创建了一个可从登录页面访问的注册表格,但是我无法找到它,因此会自动重定向到登录页面。

这是我的配置

@Override
protected void configure(HttpSecurity http) throws Exception { // @formatter:off
    http.requestMatchers()
            .antMatchers("/login**", "/oauth/**")
            .and()
            .authorizeRequests()//autorise les requetes
            .anyRequest()//pour n'importe quel path
            .authenticated()//aux utilisateur authentifié
            .and()
            .formLogin()
            .loginPage("/login")
            .loginProcessingUrl("/login.do")
            .usernameParameter("username")
            .passwordParameter("password")
            .permitAll()
            .and()
            .userDetailsService(userDetailsServiceBean());
} 

我想允许/ registration路径,但是我不知道该怎么做。

1 个答案:

答案 0 :(得分:0)

这是解决方案

@Override
protected void configure(HttpSecurity http) throws Exception { // @formatter:off
    http.requestMatchers()
            .antMatchers("/login**", "/registration"/*, "/logout.do"*/, "/oauth/**")
            .and()
            .authorizeRequests()
            .antMatchers("/registration")
            .permitAll()
            .anyRequest()
            .authenticated()
            .and()
            .formLogin()
            .loginPage("/login")
            .loginProcessingUrl("/login.do")
            .usernameParameter("username")
            .passwordParameter("password")
            .permitAll()
            .and()
            .userDetailsService(userDetailsServiceBean());
}