فهم سلسلة عوامل تصفية Spring Security
تعرّف على ما يحدث داخل Spring Security 6 لفهم كيفية معالجة سلسلة عوامل تصفية servlet لكل طلب، وموضع المصادقة ضمنها
فهم سلسلة عوامل تصفية Spring Security درس مجاني في Spring Security 6 & JWT Authentication على CoddyKit. هذا هو الدرس 4 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Spring Security 6 & JWT Authentication، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Spring Security 6 & JWT Authentication 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
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.
تعلم Java مع معلم ذكاء اصطناعي — مجانًا
اكتب وقم بتشغيل أكوادك الفعلية في المتصفح، واحصل على مساعدة فورية من معلم ذكاء اصطناعي متاح 24/7، واستمر من حيث توقفت على الويب أو في التطبيق.
- الدورات
- 12
- الدروس
- 48
الأسئلة الشائعة
هل درس «فهم سلسلة عوامل تصفية Spring Security» مجاني؟
نعم — نص درس «فهم سلسلة عوامل تصفية Spring Security» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Spring Security 6 & JWT Authentication، انتقل إلى CoddyKit PRO. تتضمن دورة Spring Security 6 & JWT Authentication 4 دروس في المجموع.
ماذا ستتعلم في «فهم سلسلة عوامل تصفية Spring Security»؟
تعرّف على ما يحدث داخل Spring Security 6 لفهم كيفية معالجة سلسلة عوامل تصفية servlet لكل طلب، وموضع المصادقة ضمنها تتمرن على Spring Security 6 & JWT Authentication مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Spring Security 6 & JWT Authentication؟
لا تُشترط خبرة سابقة. Spring Security 6 & JWT Authentication على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 4 من أصل 4.
كم من الوقت يستغرق درس «فهم سلسلة عوامل تصفية Spring Security»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Spring Security 6 & JWT Authentication هذا؟
نعم. كل درس في Spring Security 6 & JWT Authentication يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مقدمة إلى Spring Security 6
- إعداد المشروع والتبعيات
- مصادقة المستخدمين داخل الذاكرة
- فهم سلسلة عوامل تصفية Spring Security