HttpSecurity配置-permit all仍然需要基本的身份验证



我正试图将一个不安全的控制器端点/foo/bar添加到我的应用程序中,但每当我尝试调用它时,我都会得到401 Unauthorized

这是我的WebSecurityConfigurerAdapter:

http
    .authorizeRequests()
        .antMatchers("/foo/**").permitAll()
    .and()
    .formLogin()
        .loginPage("/login").permitAll()
    .and()
    .requestMatchers()
        .antMatchers("/login", "/oauth/authorize", "/oauth/confirm_access")
    .and()
    .authorizeRequests()
        .anyRequest().authenticated();

有人能指出我遗漏了什么吗?

在一个authorizeRequests节中连接多个antMatchers

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
            .authorizeRequests()
                .antMatchers("/foo/**").permitAll()
                .anyRequest().authenticated()
            .and()
            .formLogin().loginPage("/login").permitAll();
}

我不确定config中的hierarchy是什么,但它似乎不对。

尝试:

http
    .formLogin()
        .loginPage("/login")
        .and()
    .authorizeRequests()
        .antMatchers("/foo/**").permitAll()
        .anyRequest().authenticated();

相关内容

  • 没有找到相关文章

最新更新