如何允许Swagger绕过WebSecurityConfig?

时间:2019-10-13 06:02:25

标签: spring-boot authentication spring-security swagger

我有一个像这样的基本配置

" "

因此,基本上,它允许/ authenticate通过,但其他所有都需要令牌。如何允许它也绕过Swagger?由于团队依靠Swagger来查看API文档,因此开发工作变得很困难。

1 个答案:

答案 0 :(得分:1)

使用permitAll(). antMatchers 中添加一般端点,也可以使用 configure(WebSecurity WebSecurity)并使用.ignoring()参见{{3} }

protected void configure(HttpSecurity httpSecurity) throws Exception {
        httpSecurity.csrf().disable()
                .authorizeRequests()
                .antMatchers("/authenticate").permitAll()
                .antMatchers("/v2/api-docs", "/configuration/**", "/swagger*/**", "/webjars/**").permitAll()
                .anyRequest().authenticated().and()
                .exceptionHandling().authenticationEntryPoint(jwtAuthenticationEntryPoint).and().sessionManagement()
                .sessionCreationPolicy(SessionCreationPolicy.STATELESS);

        httpSecurity.addFilterBefore(jwtRequestFilter, UsernamePasswordAuthenticationFilter.class);
    }