成功登录后,Spring Security Basic身份验证将返回404

时间:2019-08-07 12:40:57

标签: java spring spring-boot authentication spring-security

场景:

我有两个spring服务通过redis共享会话。一种服务是我的身份验证服务,另一种是ui。现在,我想针对auth服务进行身份验证,如果登录成功(不进行表单登录),则返回一个会话,并返回状态码200。我得到了可以成功进行身份验证的机制。

问题:

即使我已成功获得授权,我也会获得状态404。

我的期望: 我的目标是客户端可以调用auth服务并获得有效的会话和httpstatus OK。 之后,他可以在ui服务中调用其特定于角色的终结点。 auth验证可用于共享redis会话。

代码:

@Configuration
@EnableWebSecurity
//Security Routine for handling mobile login
public class RestSecurityAdapter extends WebSecurityConfigurerAdapter {

    @Autowired
    private AuthenticationEntryPoint entryPoint;

    @Autowired
    private MyUserDetailsService userDetailsService;

    @Bean
    @Override
    @Qualifier("authenticationManagerBean")
    public AuthenticationManager authenticationManagerBean() throws Exception {
        return super.authenticationManagerBean();
    }

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.userDetailsService(userDetailsService);

    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {

        http.csrf().disable();
        http.authorizeRequests().anyRequest().authenticated().and().httpBasic().authenticationEntryPoint(entryPoint);

        http.addFilterAt(new CustomBasicAuthenticationFilter(authenticationManagerBean()),
                BasicAuthenticationFilter.class);

    }

    @Bean
    public static NoOpPasswordEncoder passwordEncoder() {
        return (NoOpPasswordEncoder) NoOpPasswordEncoder.getInstance();
    }

}

问题:

为什么登录成功后返回400错误而不显示状态?

0 个答案:

没有答案