Spring Framework and Spring Boot

  1. Securing Applications with Spring Security
    1. Core Concepts
      1. Authentication vs Authorization
        1. Principals and Authorities
          1. Security Context
            1. Security Filters
              1. Filter Chain Overview
                1. DelegatingFilterProxy
              2. Web Security Configuration
                1. SecurityFilterChain Bean
                  1. Lambda-Based Configuration
                    1. Method Chaining Configuration
                    2. HttpSecurity Configuration
                      1. URL-Based Security
                        1. CSRF Protection
                          1. Session Management
                        2. Authentication Mechanisms
                          1. In-Memory Authentication
                            1. User Definitions in Configuration
                            2. JDBC-Based Authentication
                              1. User Schema
                                1. DataSource Configuration
                                2. UserDetailsService
                                  1. Custom UserDetails Implementation
                                    1. Loading User Data
                                    2. Password Encoding
                                      1. PasswordEncoder Interface
                                        1. BCrypt Encoder
                                          1. Other Encoders
                                          2. Authentication Providers
                                            1. DaoAuthenticationProvider
                                              1. Custom Authentication Providers
                                            2. Authorization
                                              1. Securing Endpoints
                                                1. URL-Based Security
                                                  1. Ant Matchers
                                                    1. MVC Matchers
                                                    2. Method-Level Security
                                                      1. @EnableGlobalMethodSecurity
                                                        1. @PreAuthorize
                                                          1. @PostAuthorize
                                                            1. @Secured
                                                            2. Role-Based Access Control
                                                              1. Roles vs Authorities
                                                                1. Hierarchical Roles
                                                                2. Expression-Based Access Control
                                                                  1. SpEL Expressions
                                                                3. Session Management
                                                                  1. Session Creation Policy
                                                                    1. Session Fixation Protection
                                                                      1. Concurrent Session Control
                                                                        1. Remember Me Authentication
                                                                        2. OAuth2 and JWT Support
                                                                          1. OAuth2 Client
                                                                            1. OAuth2 Resource Server
                                                                              1. JWT Token Handling
                                                                                1. Integration with Third-Party Providers
                                                                                2. CORS Configuration
                                                                                  1. Cross-Origin Resource Sharing
                                                                                    1. Global CORS Configuration
                                                                                      1. Method-Level CORS