Configuration de base

  • @EnableWebSecurity : pour activer la gestion de la sécurité (inutile pour Spring Boot).

  • Créer une classe qui étend WebSecurityConfigurerAdapter.

@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

    // Configuration de la partie HTTP
    // Les règles de sécurisation y sont définies
    @Override
    protected void configure(HttpSecurity http) throws Exception {

        // toutes les requêtes doivent être authentifiées
        http.authorizeRequests().anyRequest().authenticated()

                // Permettre  aux utilisateurs de s'authentifier via une page d'authentification
                .and().formLogin()

                // Permettre aux utilisateurs de s'authentifier via HTTP Basic Authentification
                .and().httpBasic();
    }

    // Configuration de la source d'identité
    @Bean
    @Override
    public UserDetailsService userDetailsService() {
        // Ici une gestion en "mémoire" des utisateurs
        InMemoryUserDetailsManager manager = new InMemoryUserDetailsManager();

        // Création d'un utilisateur en "dur"
        manager.createUser(
                User.withDefaultPasswordEncoder().username("user").password("password").roles("USER").build());
        return manager;
    }

}

results matching ""

    No results matching ""