Я создал облачное приложение Spring, используя консул в качестве службы обнаружения/реестра. Я настроил свою весеннюю безопасность следующим образом:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.exceptionHandling()
.authenticationEntryPoint(myEntryPoint());
http
.authorizeRequests()
.antMatchers("/images/**").permitAll()
.antMatchers("/modules/**").permitAll()
.antMatchers("/vendor/**").permitAll()
.antMatchers("/views/**").permitAll()
.antMatchers("/index.html").permitAll()
.regexMatchers("/health").permitAll()// consul check health
.antMatchers("/api/**").authenticated()
.antMatchers("/**").permitAll();
http // login configuration
.addFilterAfter(springSecurityFilter(), BasicAuthenticationFilter.class);
http //logout configuration
.logout()
.logoutSuccessHandler(logoutHandler());
http.csrf().disable();
}
Обычно при использовании этого фильтра проверка работоспособности spring consul не проходит мимо этого фильтра (публичный доступ).
Но проверка консула на здоровье консула проходит мимо фильтра.
Если я использую следующий URL-адрес, меня перенаправляют на страницу аутентификации:
https://localhost:8181/health
antMatchers("/api/**).authenticated().antMatchers("/**").permitAll()
даст тот же результат (/**
— это все, что также будет охватывать все ранее упомянутые URL-адреса, такие как/images/**
и т. д.). - person M. Deinum   schedule 29.01.2016