Spring Security 6 & JWT Authentication · Leçon

Comprendre la chaîne de filtres de Spring Security

Explorez les mécanismes internes de Spring Security 6 pour comprendre comment la chaîne de filtres de servlet traite chaque requête et où intervient l’authentification.

Leçon 4 sur 413 étapes

Comprendre la chaîne de filtres de Spring Security est une leçon Spring Security 6 & JWT Authentication gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Spring Security 6 & JWT Authentication, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Spring Security 6 & JWT Authentication comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

How Requests Get Secured

So how does every request actually get checked? The security filter chain — a series of servlet filters Spring slots in before your controllers.

What Is a Servlet Filter?

A servlet Filter intercepts HTTP requests and responses before they reach your code. Spring Security is built almost entirely from these filters.

The DelegatingFilterProxy

The real servlet filter, DelegatingFilterProxy, hands each request to a Spring-managed bean — bridging the servlet world and the Spring context.

The FilterChainProxy

Behind that proxy sits FilterChainProxy, which holds one or more SecurityFilterChain instances and routes each request to the one that matches.

Key Filters in Order

Filters run in a fixed order: SecurityContextHolderFilter loads context, the auth filter handles login, and AuthorizationFilter enforces access rules.

Defining a SecurityFilterChain Bean

In Spring Security 6 you configure everything by declaring a SecurityFilterChain bean — the modern replacement for WebSecurityConfigurerAdapter. See below.

@Bean
SecurityFilterChain chain(HttpSecurity http) throws Exception {
    http.authorizeHttpRequests(a -> a.anyRequest().authenticated())
        .formLogin(Customizer.withDefaults());
    return http.build();
}

Where the SecurityContext Lives

After login, the Authentication is stored in the SecurityContext and stays reachable via SecurityContextHolder for the rest of the request.

Authentication auth = SecurityContextHolder.getContext().getAuthentication();

Permitting Some Paths

Let public paths through while securing the rest — all on the same chain. The code uses permitAll() for /public and authenticated() for everything else.

http.authorizeHttpRequests(a -> a
    .requestMatchers('/public/**').permitAll()
    .anyRequest().authenticated());

Multiple Filter Chains

Register several SecurityFilterChain beans with securityMatcher so API and web paths get different rules. The first matching chain wins.

http.securityMatcher('/api/**');

Adding a Custom Filter

Slot your own filter at a precise position with addFilterBefore — the foundation for the JWT processing you'll build later in this course.

http.addFilterBefore(myFilter, UsernamePasswordAuthenticationFilter.class);

Why This Matters

Knowing the chain explains why ordering matters, where auth versus authz happens, and exactly where a custom JWT filter has to plug in.

Quick Check

In Spring Security 6, how do you define your security configuration?

Recap

Recap: requests flow DelegatingFilterProxy to FilterChainProxy to SecurityFilterChain; filters run in order, auth then authz, and addFilterBefore inserts custom ones.

Gratuit pour commencer

Apprends Java avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
12
Leçons
48

Questions Fréquemment Posées

La leçon « Comprendre la chaîne de filtres de Spring Security » est-elle gratuite ?

Oui — le texte complet de « Comprendre la chaîne de filtres de Spring Security » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Spring Security 6 & JWT Authentication, passe à CoddyKit PRO. Le cours Spring Security 6 & JWT Authentication comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Comprendre la chaîne de filtres de Spring Security » ?

Explorez les mécanismes internes de Spring Security 6 pour comprendre comment la chaîne de filtres de servlet traite chaque requête et où intervient l’authentification. Tu pratiques Spring Security 6 & JWT Authentication avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Spring Security 6 & JWT Authentication ?

Aucune expérience préalable n'est requise. Spring Security 6 & JWT Authentication sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Comprendre la chaîne de filtres de Spring Security » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Spring Security 6 & JWT Authentication ?

Oui. Chaque leçon Spring Security 6 & JWT Authentication inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Introduction à Spring Security 6
  2. Configuration du projet et des dépendances
  3. Authentification des utilisateurs en mémoire
  4. Comprendre la chaîne de filtres de Spring Security
← Retour à Spring Security 6 & JWT Authentication