Configurer l'actionneur d'extrémité de sécurité

Le Printemps de Démarrage de l'Actionneur d'extrémité sont, par défaut, protégé par http de base de la sécurité.

Cela peut-il être modifié pour utiliser le Printemps de Sécurité?
J'ai configuré le Printemps de Sécurité, avec succès et de l'utiliser pour protéger mes autres pages.

J'ai essayé security.basic.enabled: false et l'ajout de .antMatchers("/manage/**").hasRole("ADMIN") dans mes autoriser des demandes (remarque je suis en utilisant une url différente en tant que root pour les points de terminaison), mais cela n'a pas aide.
Je reçois une base http auth journal, qui n'a pas les utilisateurs configurés dans le AuthenticationManager.

Une idée?

EDIT - fournir plus de détails -

Mon Application.java ressemble:

@Configuration
@ComponentScan
@EnableAutoConfiguration
public class Application extends WebMvcConfigurerAdapter {


    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/app").setViewName("app/index");
        registry.addViewController("/app/login").setViewName("app/login");
    }

    @Bean
    public ApplicationSecurity applicationSecurity() {
        return new ApplicationSecurity();
    }

    @Order(Ordered.LOWEST_PRECEDENCE - 8)
    protected static class ApplicationSecurity extends WebSecurityConfigurerAdapter {

        @Override
        protected void configure(AuthenticationManagerBuilder auth) throws Exception {
            //@formatter:off
            auth.inMemoryAuthentication()
                .withUser("test1")
                    .password("test1pw")
                    .roles("USER", "ADMIN")
                    .and()
                .withUser("test2")
                    .password("test2pw")
                    .roles("USER");
            //@formatter:on
        }

        @Override
        protected void configure(HttpSecurity http) throws Exception {
            //@formatter:off
            http
                .csrf()
                    .disable()
                .authorizeRequests()
                    .antMatchers("/app/login").permitAll()
                    .antMatchers("/app/**").hasRole("USER")
                    .antMatchers("/manage/**").hasRole("ADMIN")
                    .and()
                .formLogin()
                    .loginPage("/app/login")
                    .failureUrl("/app/login?error")
                    .defaultSuccessUrl("/app")
                    .permitAll()
                    .and()
                .logout()
                    .logoutUrl("/app/logout")
                    .logoutSuccessUrl("/app/login?logout");
            //@formatter:on
        }

        @Override
        public void configure(WebSecurity web) throws Exception {
            //@formatter:off
            web
                .ignoring()
                    .antMatchers("/assets/**");
            //@formatter:on
        }
    }
}

Dans mon application.yml j'ai aussi:

management:
  context-path: /management

Noter que la configuration est la même que vous le guide que vous avez mentionné.

Maintenant ce que je voudrais attendre - ou comme pour la configuration, c'est que l' /gérer les points de terminaison comme la santé, les mappages etc serait protégé par les utilisateurs à partir de la mesure AuthenticationManager.

J'ai aussi essayé d'ajouter management.security.enabled=false, et cela désactive l'authentification, par exemple /gérer/mappings.
La problématique de la chose, cependant, est que j'ai explicitement dit Printemps de Sécurité pour protéger ces urls via:

@Override
protected void configure(HttpSecurity http) throws Exception {
    //@formatter:off
    http
        .authorizeRequests()
            .antMatchers("/app/login").permitAll()
            .antMatchers("/app/**").hasRole("USER")
            .antMatchers("/manage/**").hasRole("ADMIN")

mais cela ne fonctionne pas. Remarque d'autres autoriser les allumettes faire le travail.
Je me demande si cela a quelque chose à faire dans les délais et l'ordre. J'ai copié @Order(Ordered.LOWEST_PRECEDENCE - 8) de l'échantillon, mais je ne sais pas pourquoi - 8 est utilisé.

De se plonger un peu plus profond, j'ai également exécuter l'échantillon (https://github.com/spring-projects/spring-boot/blob/master/spring-boot-samples/spring-boot-sample-web-method-security) moi-même et je vois le même comportement dans l'exemple d'application.
La gestion de la sécurité est semble complètement indépendants l'un de l' user et admin les utilisateurs configurés dans l'échantillon dans la mémoire de l'authentification.

OriginalL'auteur Marcel Overdijk | 2014-04-19